我有一个包含几个ul个标签的div标签.

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

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

然而,除了第一个标签之外,我下面try 为其他ul个标签设置CSS属性的try 不起作用:

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写:"每个元素,除了第一个"?

推荐答案

您发布的适用于所有现代浏览器的actually works版本之一(其中CSS selectors level 3supported):

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

如果您需要支持传统浏览器,或者如果您受到:not Select 器的limitation的阻碍(它只接受simple selector作为参数),那么您可以使用另一种技术:

定义一个范围大于预期范围的规则,然后有条件地"撤销"它,将其范围限制在您确实预期的范围内:

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

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

当限制范围时,请为您正在设置的每个CSS属性使用default value.

Css相关问答推荐

如何删除此链接OS class前台的高级奥斯卡主题和插件

隐藏div后缺少div的InnerHTML

如何为垫子制作圆角- Select 所有角点上的下拉列表

我应该在哪里放置expo /Reaction本地项目的CSS重置文件?

如何将另一种自定义位置 colored颜色 添加到三角形CSS中?

CSS媒体查询不显示所需的输出

臭虫?嵌套的css供应商前缀中断Chrome css解析

如何在Bootstrap 5上使用移动设备居中内容?

是否有一个 CSS 可以根据字符的高度 for each 字符呈现可变高度?

如何简化CSS?

网格在行方向上的大小不正确

如何在 TypeScript 文件中导入 CSS 模块?

如何在 nth-child 中正确传递 CSS 变量?

你如何调试可打印的 CSS?

Angular Material 中的样式垫 Select

如何使用 JavaScript 获取元素的背景图片 URL?

Bootstrap 4:导航内的多级下拉菜单

CSS - 悬停穿过元素以激活悬停在被覆盖的元素上

当子元素水平溢出时,为什么忽略父元素的右填充?

了解 Bootstrap 3 中的网格类( col-sm-# 和 col-lg-# )