我有一个HTML列表,我需要从中选择除第一个和最后一个元素之外的所有元素。
现在我正在尝试这样:
.inputList li:not(:first-child):not(:last-child) {
// stuff
}
不是真的有用......有没有更好的方法,这也适用于IE?
感谢您的投入!
答案 0 :(得分:7)
您可以为所有子元素指定声明,然后为第一个和最后一个子节点覆盖。例如:
.example > LI {background: green; }
.example > LI:first-child,
.example > LI:last-child {background: none; }
答案 1 :(得分:5)
像这样写:
.inputList li:first-child, .inputList li:last-child{
color:red;
}
注意:first-child
一直工作到IE7&以上。 :last-child
工作到IE9&上方。
答案 2 :(得分:3)
第一个元素可以忽略为
li + li{border-left: 1px solid #000;}
答案 3 :(得分:1)
我刚刚找到了另一种方法,因此仅出于文档目的将其发布:
.inputList li + li:not(:last-child) {
background-color: green;
}
就我而言,我希望它在列表项之后加上一个逗号
.education li:not(:last-child):after {
content: ",";
}