我有一些CSS:
#image-edges-beneath:hover{
background-color: blue;
}
#image-edges:hover{
background-color: blue;
}
#image-edges-beneat:hover:after{
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
-ms-transition: all 1s ease;
transition: all 1s ease;
border: 2px solid #F1FD6D;
}
#image-edges:hover:after{
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
-ms-transition: all 1s ease;
transition: all 1s ease;
border: 2px solid #F1FD6D;
}
然而,这不起作用。唯一发生的事情是背景颜色有一个过渡,而我希望它只在悬停时改变,而边框我想要一个过渡,所以基本上边框渐渐变成颜色,而背景颜色在悬停时立即改变颜色。这就是我想要完成的,但这不起作用。 :( 用户有什么想法吗?
答案 0 :(得分:45)
您需要做的是设置要正确转换的属性。目前你把它作为“全部”,但它需要是“背景颜色”或“边框颜色”,根据你想要转换它。
transition: border-color 1s ease;
答案 1 :(得分:5)
你可以通过很多方式进行边框效果。将以下css应用于要应用边框效果的类,并在发生任何事件时更改边框样式。
-webkit-transition: border 3s ease;
-moz-transition: border 3s ease;
-o-transition: border 3s ease;
-ms-transition: border 3s ease;
transition: border 3s ease;
另请参阅这些链接以获取高级边框效果
https://codepen.io/giana/pen/yYBpVY
http://cssdeck.com/labs/10-crazy-effects-with-css3-border-transitions