没有任何类的元素是否有CSS选择器?

前端之家收集整理的这篇文章主要介绍了没有任何类的元素是否有CSS选择器?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
没有任何类的元素是否有CSS选择器?例如在HTML中
  1. <section>Section A</section>
  2. <section class="special">Section B</section>
  3. <section class="">Section C</section>

我想通过说出类似的东西来选择A部分(或者可能是A部分和C部分,并不重要)

  1. section:not(.*) { color: gray }

我知道我可以将它定义为section并将其重置回所有特定的类中,例如

  1. section { color: gray }
  2. section.special { color: black }

但这不是我想要的,因为一旦样式变得复杂就不易管理,在某些情况下很难正确地进行“重置”(当然不是在这个简化的例子中).

解决方法

使用section:not([class]),您可以选择没有class属性的每个部分.不幸的是,它不会选择具有空类属性值的那些部分.所以另外,我们必须排除这些部分:
  1. section:not([class]) { /* every section without class - but won't select Section C */
  2. color: red;
  3. }
  4.  
  5. section[class=""] { /* selects only Section C */
  6. font-weight: bold;
  7. }
  1. <section>Section A</section>
  2. <section class="special">Section B</section>
  3. <section class="">Section C</section>

进一步阅读

> CSS attribute selector,browser support
> :not

猜你在找的CSS相关文章