新的CSS 伪类函数 :is() 和 :where()示例详解

yizhihongxing

下面是针对“新的CSS 伪类函数 :is() 和 :where()示例详解”的完整攻略:

介绍

在 CSS Level 4 规范中,我们看到了两个新的伪类函数,它们是 :is() 和 :where() ,它们都可以用于过滤选择器,以简化 CSS 选择器的代码。

这两个伪类函数都可以将一个或多个选择器作为参数,并返回与这些选择器匹配的所有元素。

:is() 伪类

:is() 伪类选择器的作用相当于简化并列选择器的语法,将多个选择器组合为一个选择器。例如,以下选择器将选中所有段落和标题元素:

p, h1, h2, h3, h4, h5, h6 {
  color:red;
}

可以用 :is() 伪类简化为:

:is(p,h1,h2,h3,h4,h5,h6) {
  color:red;
}

这样可以减少重复的代码和提高可读性,还可以使代码更加简洁。

:where() 伪类

:where() 伪类选择器的作用与 :is() 相似,但是它只是一个容器,它不会对选择器应用特殊的规则。它通常与其它伪类一起使用,例如 :not() 。它也可以简化并列选择器的语法。

例如,以下选择器将选中所有段落和标题元素中的第一个元素:

p:first-of-type, h1:first-of-type, h2:first-of-type, h3:first-of-type, h4:first-of-type, h5:first-of-type, h6:first-of-type {
  color: red;
}

可以使用 :where() 伪类简化为:

:where(p, h1, h2, h3, h4, h5, h6):first-of-type {
  color: red;
}

这样同样可以减少重复的代码和提高可读性,还可以使代码更加简洁。

示例

以下是两个示例,展示了如何使用 :is() 和 :where() 这两个新的伪类函数:

示例一:使用 :is() 伪类

以下代码将会选中所有段落和 H2 标题元素:

:is(p, h2) {
  color: red;
}

这只有一行代码,而且非常容易阅读和理解。

示例二:使用 :where() 伪类

以下代码将会选中所有三个类别的元素中的最后一个:

.where {
  :where(section, nav, aside) :last-child {
    border-bottom: 5px solid black;
  }
}

使用 :where() 可以使代码更加简洁,而且可读性更高。

结论

:is() 和 :where() 伪类函数是一些非常有用的工具,它们可以使代码更加简洁,并提高可读性。尽管这两个伪类函数仍处于 CSS Level 4 规范的草案阶段,但是它们已经实现在许多现代的浏览器中使用。如果您想使 CSS 代码更加高效且缩短您的开发时间,那么 :is() 和 :where() 伪类函数就是您需要的工具。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:新的CSS 伪类函数 :is() 和 :where()示例详解 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • HTML 无序列表项目符号使用图片的CSS写法

    要使用图片作为HTML无序列表的项目符号,需要使用CSS的list-style-type属性以及background-image属性来实现。 具体步骤如下: 选择一个符合要求的图片作为无序列表项目符号。 在CSS文件中设置ul或ol的list-style-type属性为none,取消默认的项目符号。 针对每个项目单独设置background-image属性,…

    css 2023年6月10日
    00
  • 对背景图定位中background-position属性的自我理解

    为了帮助理解背景图定位中background-position属性,我们需要先了解一下这个属性的语法: background-position: X-axis-position Y-axis-position; 其中X-axis-position表示背景图在水平方向上的位置,Y-axis-position表示背景图在垂直方向上的位置。这两个值可以使用像素、百…

    css 2023年6月10日
    00
  • css滤镜基础教程

    CSS滤镜基础教程 CSS滤镜可以让网页设计师轻松地修改网页内的图片、视频等元素的颜色、亮度、对比度等。CSS滤镜的应用十分广泛,可以应用在图片、视频、按钮、导航栏、底部链接等众多元素中。 什么是CSS滤镜? CSS滤镜是一种基于CSS的技术,它可以通过一组属性来修改元素的颜色、亮度、对比度等。CSS滤镜通常与其他CSS属性(如opacity、transfo…

    css 2023年6月10日
    00
  • 深入理解CSS height属性设置元素的高度

    深入理解CSS height属性设置元素的高度 在CSS中,height属性用于设置元素的高度,可以应用于大部分的HTML元素。 基本语法 element { height: value; } 其中,value可以是具体的数值,也可以是百分比。 数值作为height属性值 数值可以作为height属性值,可以用像素(px)、点(pt)、厘米(cm)、英寸(i…

    css 2023年6月9日
    00
  • js防止DIV布局滚动时闪动的解决方法

    现在,我将为大家分享一下JS防止DIV布局滚动时闪动的解决方法。当我们使用DIV布局实现网站页面时,往往会遇到滚动时页面布局出现闪动的情况。这种情况一般是因为浏览器的滚动条宽度不同导致的,下面我将为大家介绍两种不同的解决方法,具体如下: 方法一:使用CSS样式 1.在CSS文件中加入以下样式: html { overflow-y: scroll !impor…

    css 2023年6月10日
    00
  • CSS滤镜

    CSS滤镜是一种应用于网页元素的视觉效果,它可以改变元素的颜色、透明度、模糊度、亮度等属性,从而改变元素的外观和风格。常见的滤镜包括模糊、灰度、透明度、伸缩、旋转等等,今天我们就要向大家介绍CSS滤镜的完整攻略,并提供代码示例。 CSS滤镜的基本用法如下: filter: <filter-function> [<value>]; 其中…

    Web开发基础 2023年3月30日
    00
  • VUE实现分布式医疗挂号系统预约挂号首页步骤详情

    Vue实现分布式医疗挂号系统预约挂号首页步骤详情 背景 随着人们健康意识的增强,医疗行业的用户需求也日益增长。因此,设计并开发一款分布式医疗挂号系统预约挂号首页,使得用户可以方便快捷的找到自己想要的医院和科室,提高医疗行业的效率和服务质量。 步骤 1. 确定需求和功能 首先,我们需要确定需求和功能,包括页面设计、搜索功能、地图展示等。这可以通过对用户需求进行…

    css 2023年6月10日
    00
  • css选择器(selector) xPath的选择器

    让我来介绍一下CSS选择器和XPath的选择器的使用攻略。 什么是CSS选择器和XPath的选择器 CSS选择器和XPath的选择器是一种用于在HTML文档中选择元素的工具。通过使用选择器,可以修改或操纵文档中的特定元素。CSS选择器和XPath的选择器是Web开发中最常用的工具之一,几乎在每个网站上都可以找到它们的使用。 CSS选择器的使用攻略 选择元素 …

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部