寻找线索,如何使用背景色中的不透明度进行过渡?
我使用的是rgba()
函数,但悬停时转换不起作用。
.bx{
background:rgba(255,0,0,0.5);
width:100px; height:100px;
position:relative;
transition: opacity .5s ease-out;
-moz-transition: opacity .5s ease-out;
-webkit-transition: opacity .5s ease-out;
-o-transition: opacity .5s ease-out;
}
.bx:hover{
background:rgba(255,0,0,1);
}
.t{
position:absolute;
bottom:0px;
}
HTML
<div class="bx"><div class="t">text</div></div>
知道吗,我该如何使用.bx
的转换?
实际上,opacity
和rgba()
是完全不同的。
由于background
属性使用rgba()
作为背景色,因此需要使用background
作为转换属性,如下所示:
.bx {
background: rgba(255,0,0,0.5);
width:100px; height:100px;
position: relative;
-webkit-transition: background .5s ease-out;
-moz-transition: background .5s ease-out;
-o-transition: background .5s ease-out;
transition: background .5s ease-out;
}
.bx:hover {
background: rgba(255,0,0,1);
}
JSBin演示。