div~div 和 div:not(:first-of-type) 之间的区别?


就匹配元素而言,两者相同。让我们来看一个例子。

<section>
   <div></div> <!-- div:first-child or div:first-of-type -->
   <div></div> <!-- div+div or div~div or div:nth-of-type(2) -->
   <p></p>
   <div></div> <!-- div+p+div or div~div or div:nth-of-type(3),
   but not div+div -->
</section>
<section>
   <h1></h1> <!-- h1:first-child -->
   <div></div> <!-- div:first-of-type or div:nth-child(2) -->
   <div></div> <!-- div~div or div:nth-of-type(2) or div:nth-child(3) -->
</section>

如果你的 CSS 规则中两个选择器都匹配相同的元素,那么由于 :first-of-type 伪类,你的 div:not(:first-of-type) 将具有优先级。

更新于:2020年1月28日

103 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告