CSS 中的 :is() 和 :where() 是什么?它们是相同的还是不同的?
什么是 :是() 和 :where() 在 CSS 中?它们是相同的还是不同的?
这 :是()
伪类函数将选择器列表作为其参数,并选择可以由该列表中的选择器之一选择的任何元素。
:is()
以上等价于以下内容,这对于以更紧凑的形式编写大型选择器很有用。
同样的事情可以用 :在哪里()
.
CSS 伪类函数 :在哪里()
将选择器列表作为参数,并选择可由该列表中的一个选择器选择的任何元素。
:where()
以上等价于以下,
:where() expand
但是等等,它们看起来都一样。那么有什么区别呢?
不同之处在于 特异性。
在 CSS 中,如果有两个或多个 CSS 规则指向同一个元素,则具有最高特异性值的选择器将“获胜”,其样式声明将应用于该 HTML 元素。
所以基本上,两者都没有 :在哪里()
它里面的任何东西都不是特异性的。其特异性始终为 0。
另一方面,里面的一切 :是()
伪类计算特异性。
那么使用哪一个…………..?
这完全取决于你的目标。您可以使用 :是()
如果要减少选择器重复,则使用伪类。
但是,如果您还想要较低的特异性,那么 :在哪里()
是要走的路!
如果你想编写更简洁的代码,或者你只想每周都有这样的提示,那么你可以在 medium 上关注我将更有可能向你展示下一篇文章。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明