如果位于 : absolute;,jquery 不会淡出文本

标签 jquery internet-explorer-8 css-position fadeout

我有 LI,我想淡出然后再淡入。在列表项中,我有一些文本。该文本绝对位于 LI 内。

问题是在 IE8 中(IE6 和 7 看起来不错)我可以让除文本之外的所有内容都淡出:

http://jsbin.com/esamu/13

如果我删除文本元素上的绝对定位(在本例中为 P),IE8 就可以正确淡入淡出文本:

http://jsbin.com/esamu/14

有谁知道这是为什么吗?有人知道修复方法吗?

更新:

如果文本被定位的话,这似乎是 IE8 中的一个普遍问题。所以,严格来说并不是绝对的。我有预感这是由于cleartype fade bug 造成的。

最佳答案

通过定位文本,IE8将不会继承不透明度。实际上,我不认为这与cleartype bug 是同一个问题。

我已经用一个有效的脚本更新了您的脚本:http://jsbin.com/esamu/19

我所做的只是将 $('li') 更改为 $('li,p') ,以便它显式选择定位元素。

关于如果位于 : absolute;,jquery 不会淡出文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2503389/

相关文章:

jquery - 使用 Kendo Scheduler 创建自定义编辑模板

javascript - ie8 Date() 兼容性错误

javascript - jQuery javascript 按键功能不适用于 IE8

html - 'transform3d' 不适用于位置 : fixed children

css - 将 Z-Index 应用于 DropDownTree 不会影响它

jquery - 将样式应用于包含某个类的 div 的 div

javascript - 替换两个 div 时底部内容不会闪烁

javascript - 缩短 JQuery 片段

jquery - 超大 3.2.7 在 IE8 中不起作用

javascript - 将固定元素与手机屏幕对齐?