在CSS中排除某个id或类名

在 CSS 中,你可以使用 :not() 伪类选择器来排除特定的类名、ID 或其他元素。以下是几种常见的排除方法:

  • 排除某个类名
/* 选择所有 ul,但不包括 .single-meta 类 */
ul:not(.single-meta) {
  font-size: 14px;
}
  • 排除某个 ID
/* 选择所有 div,但不包括 #sidebar */
div:not(#sidebar) {
  margin: 0;
}
  • 排除多个类或 ID
/* 选择所有 p,但不包括 .note 和 .warning 类 */
p:not(.note):not(.warning) {
  color: #333;
}

/* 选择所有 a,但不包括 #external-link 和 .disabled */
a:not(#external-link):not(.disabled) {
  text-decoration: none;
}
  • 结合其他选择器
/* 选择 .content 下的 ul,但不包括 .no-style */
.content ul:not(.no-style) {
  list-style: none;
  padding-left: 0;
}
  • 排除特定属性
/* 选择所有 input,但不包括 type="submit" */
input:not([type="submit"]) {
  border: 1px solid #ccc;
}

注意事项

:not() 只能接受简单选择器(不能嵌套 :not() 或使用复杂选择器):

/* 错误写法(不支持) */
ul:not(.class1.class2) { ... }

/* 正确写法 */
ul:not(.class1):not(.class2) { ... }
兼容性:现代浏览器都支持 :not(),但在极旧浏览器(如 IE8 及以下)可能不生效。

性能优化

过度使用 :not() 可能影响渲染性能,尽量保持选择器简洁。示例:排除 .single-meta 的无序列表样式

/* 选择 .content-single 下的 ul,但不包括 .single-meta */
.content-single ul:not(.single-meta) {
  font-size: 14px;
  list-style: none;
  padding-left: 1.5em;
}

/* 自定义列表标记 */
.content-single ul:not(.single-meta) li::before {
  content: "•";
  color: #4a90e2;
  margin-right: 0.5em;
}

这样,.single-meta 类的 ul 就不会应用这些样式。

标签: css

移动端可扫我直达哦~

推荐阅读

thumbnail 2025-03-02

img插入div容器底部有3px白边

现象当盒子容器中中包含img元素时,如果连接区域对比度较高的情况下,会发现父元素的高度比img图片的高度多出3px,容器底部有一条明显的白边。<div> <img src=" "> ...

建站相关 css

thumbnail 2025-03-02

当网页中有遮罩时,如何禁止背景元素滚动

很多自适应的主题,在手机端都是选择把菜单栏隐藏在侧面,按需调用。调用的时候往往页面会显示一个遮罩,屏蔽掉了其他不相关元素的点击,但遮罩上即便设置了overflow属性,也无法阻挡背景body自由翻滚的热情。这个时候可以考虑给body临...

建站相关 css

thumbnail 2025-03-01

关于css的三维旋转rotateX,rotateY,rotateZ

试着写了一个前台登录窗口,想在展示的时候绕x轴以3d旋转的方式出现。旋转效果是实现了,但看着好像没有啥透视效果。记得之前修改wp主题的时候是实现过这个效果的,当真是学如逆水行舟,不进则退...退...退...测试了几个百度搜索到的代码...

建站相关 css

thumbnail 2025-02-28

站点导航条缩放动画不一致的问题

想问导航条增加一个滚动动画,向下滚动一段之后调整导航条高度,结果效果是有了,一看盒子高度先上去了,菜单栏却慢吞吞的隔了很久才到位,像极了工作摸鱼的打工人,盲目的调整了很久,最后发现是各部件动画持续时间不一致的问题。同一个模块中的零件,...

建站相关 css

thumbnail 2024-10-23

在CSS中的如何进行打印设置

之前翻阅wordpress默认主题的时候,看到主题的打印设置占了很大的篇幅,嫌太麻烦所以直接跳过了。这几天想要打印一份博客上的内容,觉得页眉侧栏以及页尾都有点多余,只需要打印博文部分的内容就可以了。于是只能重新去学习关于打印的语法,发...

建站相关 css

thumbnail 2023-10-14

Css中的反选伪类“:not()”

该“:not()”伪类用来匹配不符合一组选择器的元素。由于它的作用是防止特定的元素被选中,它也被称为反选伪类(negation pseudo-class)。描述使用 :not() 时,有几种不寻常的效果和结果需要注意:可以使用此伪类编...

建站相关 css

thumbnail 2023-09-06

浮动阴影-为什么我的css浮动元素总是差那么点意思

很多站点都这样的效果,鼠标移上去时对应元素上浮,然后这样的元素往往有一排。博主常见的操作是左右平移几次,然后元素就跟琴键一样依次浮动,看起来非常解压。虽然这个效果有个小小的bug,将鼠标停留在浮动起点与终点的一小块区域,会导致重复触发...

建站相关 css

thumbnail 2023-09-04

ios下safari浏览器hover失效的问题

修改主题的时候发现ios下hover子菜单弹出后收不回去,虽然刷新一下页面或者点击一个其他的按钮也能正确关闭,但是始终感觉操作不便。于是安装了一个第三方浏览器(夸克)尝试了一下,第三方浏览器是没有什么问题的,纯属safari的锅。找了...

建站相关 css

thumbnail 2023-05-25

如何用css实现一个导航条的logo

浏览网络的时候看见某个站点的导航条菜单图标很有意思,导航条logo一般都是3条横杠,该站点的其中一条横杠是略短的,鼠标悬停时会动态伸长。尝试着自己利用css实现了类似的效果,考虑将其放入正在修改的wordpress主题当中,先记录一下...

建站相关 css