您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

parent/ancestor 元素的CSS否定伪类:not()

parent/ancestor 元素的CSS否定伪类:not()

这不是读到“选择所有h1@H_403_3@祖先不是div@H_403_3@元素的元素吗?”。

是的 但是在典型的HTML文档中, 每个 h1@H_403_3@人至少都有两个不是div@H_403_3@元素的祖先,而这些祖先就是body@H_403_3@and html@H_403_3@。

这是尝试使用:not()@H_403_3@以下方法过滤祖先的问题:只是无法可靠地工作,特别是当:not()@H_403_3@不能被其他选择器(例如类型选择器或类选择器)限定时.foo:not(div)@H_403_3@。只需将样式应用于所有h1@H_403_3@元素并使用覆盖它们,您将拥有更加轻松的时间div h1@H_403_3@。

在选择器4中,:not()@H_403_3@已进行增强,可以接受包含组合器(包括后代组合器)的完整复杂选择器。是否在快速配置文件中实现(从而在CSS中实现)仍待测试和确认,但是一旦实现,您_将_ 能够使用它来排除具有某些祖先的元素。由于选择器的工作方式,必须对元素本身(而不是祖先)进行取反才能可靠地工作,因此语法看起来会有些不同:

h1:not(div h1) { color: #900; }
@H_403_3@

任何熟悉jQuery的人都会很快指出,该选择器现在可以在jQuery中使用。这是选择器3:not()@H_403_3@与jQuery之间的众多差异之一,选择:not()@H_403_3@器4试图纠正这一差异

CSS 2022/1/1 18:14:44 有638人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶