微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

not:first-child 选择器

如何解决not:first-child 选择器

您发布的版本之一实际上适用于所有现代浏览器(支持CSS选择器级别 3):

div ul:not(:first-child) {
    background-color: #900;
}

如果您需要支持旧版浏览器,或者如果您受到:not选择器的限制(它只接受一个简单的选择器作为参数),那么您可以使用另一种技术:

定义一个范围比您想要的更大的规则,然后有条件地“撤销”它,将其范围限制在您想要的范围内:

div ul {
    background-color: #900;  /* applies to every ul */
}

div ul:first-child {
    background-color: transparent; /* limits the scope of the prevIoUs rule */
}

限制范围时,请为您设置的每个 CSS 属性使用默认值。

解决方法

我有一个div包含多个标签的ul标签。

我只能为第一个ul标签设置 CSS 属性:

div ul:first-child {
    background-color: #900;
}

但是,我以下尝试为ul除第一个标签之外的其他标签设置 CSS 属性不起作用:

div ul:not:first-child {
    background-color: #900;
}

div ul:not(:first-child) {
    background-color: #900;
}

div ul:first-child:after {
    background-color: #900;
}

我如何用 CSS 编写:“每个元素,除了第一个元素”?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。