前端开发 大前端 W3Cbest

一个专注 WEB 开发的技术博客

0%

这6个强大的CSS选择器学会,将真正帮你写出干净的CSS代码!

CSS中的选择器用于选择元素并设置其样式。在我们使用其中一个之后,它们可能会非常强大。在本文中,我将引导您通过6个功能强大的CSS选择器,这些选择器将真正帮助您在下一个项目中编写干净的CSS。

1. div >a

这个选择器将使我们能够选择所有父元素是div标签的元素。

<!-- This one will be selected --> 
<div>
<a></a>
</div>

<!-- This one won't be selected -->
<p>
<a></a>
</p>

2. div +a

选择紧接在div元素之后的每个标签。如果我们在div和a标签之间有一个元素,则不会选择该元素。

<main>
<!-- This one will be selected -->
<div></div>
<a></a>
<!-- This one won't be selected -->
<div></div>
<p></p>
<a></a>
</main>

3. div ~a

a标签将选择每个标签,然后在同一级别上添加div标签。换句话说,如果a标签不是紧跟在div标签之后,而是具有div标签作为同级元素,则将选择该标签。

<main>
  <!-- This one will be selected -->
  <div></div>
  <a></a>
  <!-- This one will be selected -->
  <div></div>
  <p></p>
  <a></a>
  <section>
    <!-- This one will be selected -->
    <div></div>
    <p></p>
    <a></a>
  </section>


  <footer>
    <!-- This one won't be selected -->
    <p></p>
    <a></a>
  </footer>
</main>

4. [属性^=值]

例如:[class ^ ="list-"]此选择器将选择每个包含class属性且其值以list-开头的元素。

<main>
<!-- This one will be selected -->
<div class="list-element"></div>
<!-- This one will be selected -->
<div class="list-container"></div>
<!-- This one will be selected -->
<div class="list-item"></div>
<!-- This one won't be selected -->
<div class="list__footer"></div>
</main>

5. [属性$=值]

例如:[src $ =”.png”]这将选择每个值以.png结尾的src属性。

<div>
<!-- This one will be selected -->
<img src="image1.png">
<!-- This one will be not selected -->
<img src="image2.jpg">
<!-- This one will be selected -->
<img src="image3.png">
<!-- This one won't be selected -->
<img src="image4.svg">
</div>

6. [属性*=值]

例如:[class * ="-list"]此选择器将选择其class属性包含-list的每个元素。 不管-list是在类值的开头,中间还是结尾都没有关系。最重要的是该值必须包含-list。

<main>
<!-- This one will be selected -->
<div class="main-list-container"></div>
<!-- This one will be selected -->
<div class="primary-list"></div>
<!-- This one will be selected -->
<div class="primary-list-item"></div>
<!-- This one won't be selected -->
<div class="list-footer"></div>
</main>

结论 有时候,很难找到所需样式的元素,这是因为我们对CSS选择器不够熟悉,而导致被滥用。在实际应用中,这些选择器可能是非常有用。

坚持技术创作分享,您的支持将鼓励我继续创作!