基本上我有这样的事情:

<ul>
<li>
<a>
<div class="trigger-layer"></div>
<div class="title-layer">Text here</div>
<div class="hover-layer"></div>
</a>
</li>
</ul>


我使用jQuery为<ul>设置动画,如下所示:

$ul = xxx (where I assign the selector to var $ul)
$ul.animate({opacity: 0}, 1000, function() {$ul.css("display", "none")});


但是,在IE8中,随着<ul>逐渐消失,<div class="title-layer">Text here</div>保持透明和不透明。最后,动画结束,将display: none;属性应用于<ul>,并且文本突然消失。

最佳答案

您这里有一些外部标记/样式/脚本会影响此效果,仅使用您发布的内容,即可在此处查看演示:http://jsfiddle.net/r7pwQ/

您确定没有无效的HTML吗? (除了锚点内的<div>也是无效的:) Make sure you're dealing with valid HTML,否则IE将执行各种随机操作。

关于jquery - 带有不透明度属性的.animate()的IE8问题-后代始终不透明,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2933543/

10-15 14:59