【发布时间】:2014-07-08 04:25:41
【问题描述】:
我的目标是创建一个下拉菜单,每次鼠标悬停其父元素时都会淡出。 而且,我想使用 CSS @keyframe 属性来控制不透明度。
请参见下面的示例。它可以按预期在 IE 和 Chrome 中运行(每次鼠标经过都会淡入)。但是,在 FireFox 中,淡入仅发生在第一次鼠标悬停时。如何在 FireFox 中每次都进行淡入?
CodePen 显示示例: http://codepen.io/anon/pen/IEBgb
(注意绿色的“Baz”文字淡入)
HTML:
<div class="foo">Foo
<div class="bar">
<div class="baz">
Baz
</div>
</div>
</div>
CSS:
@-webkit-keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@-moz-keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.foo {
cursor: pointer;
background: #333;
color: #ededed;
height: 50px;
line-height: 50px;
position: relative;
text-align: center;
width: 200px;
font-size: 30px;
}
.bar {
width: 200px;
position: absolute;
top: 52px;
background: gray;
display: none;
padding: 20px 0;
}
.foo:hover .bar {
display: block;
}
.baz {
font-size: 50px;
color: green;
visibility: visible;
opacity: 1;
-webkit-animation: fadeIn 2s;
-moz-animation: fadeIn 2s;
-o-animation: fadeIn 2s;
animation: fadeIn 2s;
}
【问题讨论】:
-
我认为这不是什么严重的问题,只是让FireFox的用户使用经典界面,并为其他用户启用丰富的界面。
-
我同意这并不严重,但如果能按需要工作就好了。
标签: css css-animations