新的 CSS 伪类函数 :is() 和 :where()

·  阅读 2179

在编写 CSS 时,有时可能会使用很长的选择器列表来定位具有相同样式规则的多个元素。例如,如果您想对标题中的 b 标签进行颜色调整,我们应该都写过这样的代码:

h1 > b, h2 > b, h3 > b, h4 > b, h5 > b, h6 > b {
  color: hotpink;
}
复制代码

现在,我们可以使用 :is() 缩减代码并提高其可读性:

:is(h1,h2,h3,h4,h5,h6) > b {
  color: hotpink;
}
复制代码

可以放在选择器之后

    article :is(.header,.footer) > b {
      color: gray;
    }
复制代码

相当于:

    article .header b, article .footer b {
      color: gray;
    }
复制代码

可以组合使用

    :is(h1,h6):is(.header,.footer) > b {
      color: blue;
    }
复制代码

相当于

    h1.header > b,  h1.footer > b, h6.header > b,  h6.footer > b {
      color: blue;
    }
复制代码

:where()  函数 和 :is()函数功能一样,不过:is()权重比:where()权重高

    :is(h1,h2,h3,h4,h5,h6) > b { /* :is 生效 */
      color: hotpink;
    }
    :where(h1,h2,h3,h4,h5,h6) > b {
      color: red;
    }
复制代码

浏览器兼容性:

分类:
前端
标签:
收藏成功!
已添加到「」, 点击更改