下面是我的html结构
<div class="footerMenu">
<ul>
<li>Home</li>
<li>About</li>
<li>Feedback</li>
<li>Contact us</li>
</ul>
</div>
但是
.footerMenu li:last-child { }
选择器似乎在IE8中不起作用。但是http://msdn.microsoft.com/en-us/library/cc351024%28VS.85%29.aspx告诉伪选择器是支持的。对此有任何帮助!
答案 0 :(得分:27)
你读错了。它说它在IE8中支持不:
如果您正在查看:first-child
,它确实在IE7和IE8中有支持,并认为这同样适用于:last-child
...惊喜!它没有。
:first-child
是一个CSS2选择器,但:last-child
仅在CSS3中引入,因此,由于Microsoft只针对CSS2符合IE8,因此他们可能不会对{{1}感到烦恼。直到后IE8。
如果您知道自己只有四个:last-child
个元素,那么您应该可以使用相邻的兄弟选择器来达到第四个li
:
li
答案 1 :(得分:2)
基于其他人的答案,另一种选择可能是使用javascript填补空白,选择性是添加最后一个孩子支持的一个很好的例子。
答案 2 :(得分:1)
您提供的链接显示IE8仅支持IE9 +。谷歌搜索最后一个孩子IE8带来了大量类似的查询。
答案 3 :(得分:1)
你在哪里读到的? IE7支持:first-child
,但:last-child
是IE9及更高版本。
(Headers为了您的方便而向下移动)
答案 4 :(得分:0)
其他答案是正确的,IE8不支持last-child。但是,要解决您的特定问题,您可以a)手动将类添加到最后<li>
或b),因为这是一个菜单,这些可能会在其中包含链接,使用属性定位最后一个链接选择器,它在IE8中工作。像
.footermenu a[href="contact.html"] { ... }
答案 5 :(得分:0)
尝试使用类似的东西:
.footerMenu li {background-color: expression(this.previousSibling==null?'red':'green');}
答案 6 :(得分:0)
我知道它已经老了但是......有一种简单的方法可以做到:
只是在你希望改变的li中这样做:
<li style="yourstyle;">
... </li>