:not伪类选择器可排除特定元素应用样式,如p:not(.special)使非.special的段落变蓝,支持类、ID、属性等条件,能组合其他选择器精确控制样式。

在CSS中,:not 伪类选择器非常实用,它允许你选中不符合特定条件的元素。当你想对某一类元素应用样式,但需要排除某个特定元素时,就可以使用 :not()。
:not(selector) 会匹配所有不满足括号内选择器的元素。括号中可以是标签名、类、ID、属性选择器等。
例如:
p:not(.special) {
color: blue;
}
这段代码会让所有 p 标签文字变蓝,但带有 .special 类的段落除外。
立即学习“前端免费学习笔记(深入)”;
你可以用 :not 排除拥有某个类或ID的元素。
- div:not(#header) —— 选中所有不是 #header 的 div
- .btn:not(.disabled) —— 选中所有不带 .disabled 类的按钮
:not 可以和其他选择器组合,实现更精确的控制。
比如:
input:not([disabled]) {
border: 1px solid #ccc;
}
为所有未被禁用的输入框添加边框。
再如:
li:not(:first-child) {
margin-top: 8px;
}
给列表中除了第一个以外的所有项增加上边距。
:not 括号内只能写一个选择器(现代浏览器支持多个用逗号分隔的情况,但兼容性需注意)。
以下写法在较新浏览器中有效:
p:not(.warning, .error) {
font-weight: normal;
}
表示段落如果不是 .warning 或 .error 类,就设置正常字重。
基本上就这些。合理使用 :not 能让你的CSS更简洁,减少不必要的类名和覆盖样式。
以上就是css伪类:not选择器排除特定元素的详细内容,更多请关注php中文网其它相关文章!