IE8:不使用jQuery选择器后

时间:2012-10-20 12:47:38

标签: css internet-explorer-8 cross-browser

我试图在IE8中使用:last-child,但在阅读了几个关于这个问题的线程之后,确定,它只是没有发生'小家伙'。所以 - 我走了下一个最好的路线,它使用jQuery在CSS last-child类上附加,执行以下操作:

$('.section-header > span:last-child').addClass('last-child');

在IE8中添加了相应的类。但是,当我去那个风格时,它似乎并没有起作用。这在网站上的一些地方很明显located here(与Chrome之类的实际体面浏览器相比):

  • 热门导航,不删除border-right
  • 上的最后<li>个属性
  • #top-grid未添加箭头(使用:before:after
  • .section-header未应用padding-left我已为:last-child.last-child指定(使用jQuery完成)
  • 日历,不向选定标签添加顶部边框颜色

所以 - 显然有很多不一致的地方 - 我不是真的在寻找“这就是你如何单独修复每一个”,更多的是“这是你错过IE8的概念”。我已经尝试过声明一个doctype(另一个线程已经提到过),但是几个小时之后,你开始疯狂了:)我真的很感激任何正确方向的推动。谢谢!

1 个答案:

答案 0 :(得分:3)

问题在于,您要将:last-child.last-child选择器分组到同一规则集中。这会导致IE8因:last-child部分而忽略整个规则集,这意味着它也会忽略您的.last-child部分。

由于您正在使用jQuery添加该类,因此您也可以删除选择器的:last-child部分,并使其适用于所有浏览器。

或者,如果您希望禁用脚本的浏览器看到您的:last-child规则,则必须拆分选择器并为每个选择器复制样式规则。

相关问题