对于jQuery手风琴,伪类在IE中不起作用

时间:2014-05-29 18:20:34

标签: javascript jquery html css internet-explorer

我正在制作一个可以扩展每个点击的手风琴,并且还有一个展开全部按钮。我在手风琴头和展开全部按钮上使用了::before。 Chrome和Firefox中的一切看起来都不错,但IE似乎在显示伪类和边距时出现问题。任何帮助将不胜感激!!

http://jsfiddle.net/JheRh/

1 个答案:

答案 0 :(得分:0)

我只能假设您正在使用IE8来测试它。如果是这种情况,IE8仅支持beforeafter伪元素的单冒号语法。

::after -> :after ::before -> :before

我相信大多数浏览器也支持单冒号语法,因此除非你可以删除,否则最好使用它

编辑 - 解决

在看了小提琴手之后,由于某种原因(仍然在看它),IE将你的li元素放入一个空标签中。这会导致选择器出现问题。您有#nav > li > a但在IE中,它会将其视为#nav > emptyEl > li > a

解决这个问题的最简单方法就是让选择器不具体,#nav li a会做你想做的事。

编辑2 - 解决方案

所以,至少对于小提琴手来说,HTML格式不正确。我真的鼓励你仔细检查代码并确保每个元素都有一个应该开始和结束。

要让它在小提琴手中运行,我只需要在<tr><td>元素之前添加<ul id="nav">元素,在结束</td></tr>元素之前添加</tbody>元素。< / p>

Working Fiddler