【发布时间】:2012-03-04 17:04:16
【问题描述】:
我正在尝试让一些 CSS 也适用于 IE7 和 IE8,但我被 :not() 选择器困住了。
我需要选择除最后一个以外的所有表格标题单元格。我目前正在使用这个:
th:not(:last-child)
在 IE7+8 上失败。
是否有任何仅使用 CSS 的解决方法?
感谢您的一些提示!
【问题讨论】:
标签: css internet-explorer css-selectors
我正在尝试让一些 CSS 也适用于 IE7 和 IE8,但我被 :not() 选择器困住了。
我需要选择除最后一个以外的所有表格标题单元格。我目前正在使用这个:
th:not(:last-child)
在 IE7+8 上失败。
是否有任何仅使用 CSS 的解决方法?
感谢您的一些提示!
【问题讨论】:
标签: css internet-explorer css-selectors
你问的方式:
除最后一个以外的所有表格标题单元格
可以参考:
th,无论在哪里都可以找到,thead>tr 的最后一个元素 - 那里可能有多个tr),th。这些情况都不能通过 IE7/8 理解的 CSS 来解决(在 CSS 中根本没有解决方案,th:last-child 和 th:last-of-type)
编辑:在一种情况下,可能会有解决方案。如果您确切知道每一行中有多少 th 元素,那么您可以选择第四个 th ~ th ~ th ~ th。
请参阅http://reference.sitepoint.com/css/generalsiblingselector 了解 IE7/8 错误(不允许发表评论)。
如果一行中只有 th(+ 选择器也可以)或者如果有 @colspan 或 @rowspan 属性(一行中的元素数!=列数)。
【讨论】:
我只通过为代码生成器中的最后一个元素添加额外的类来解决它。没有适用于 IE8,7 及更早版本的工具。
【讨论】:
你不能用纯 css 做到这一点。您可以在 HTML 中为最后一个 th 上课,也可以为此使用 selectivizr JavaScript。 Selectivizr 支持 IE 旧版本的所有 css3 和 css2 选择器
【讨论】: