除了第一个和最后一个,我如何选择表格中的所有孩子?我已经尝试了这个,但它最终选择了所有不是第一个孩子,所有孩子都不是最后一个,最终成为所有孩子:
table.programs tr td:not(:first-child), table.programs tr td:not(:last-child) {
}
我希望所有的孩子既不是第一个也不是最后一个。我怎么能这样做?
答案 0 :(得分:63)
使用两个:not()
个选择器组合,从而引用与它们相匹配的元素,即与既不与用作:not()
的操作数的选择器匹配的元素:
table.programs td:not(:first-child):not(:last-child)
答案 1 :(得分:4)
jQuery解决方案很好,但如果您想在纯CSS中执行此操作,我建议您将规则应用于整个表格,然后为第一个和最后一个孩子重置。即:
table.programs tr td {
/* your rules here */
}
table.programs tr:first-child td:first-child,
table.programs tr:last-child td:last-child {
/* reset your rules here */
}
答案 2 :(得分:1)
我认为这应该适合你:
table.programs tr td:not(:first-child,:last-child)
答案 3 :(得分:1)
像这样
li:nth-child(n+2):nth-last-child(n+2) { background: red; }
根据您的要求
table.programs tr td:nth-child(n+2):nth-last-child(n+2) { /* Your Style */ }
答案 4 :(得分:0)
它以这种方式工作
table.programs tr td:nth-child(1n+2):not(:last-child)