CSS技巧::is()、 :where()、:has()伪元素的运用

这篇具有很好参考价值的文章主要介绍了CSS技巧::is()、 :where()、:has()伪元素的运用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

:is()、:where() 和 :has() 伪元素是 CSS 中用于样式化元素的非常强大的工具。是在 CSS 选择器 Level 4 规范中引入的。允许将样式应用于符合特定条件的任何元素,例如元素的类型、元素的位置和元素的后代。

:is()

:is() 伪类可以用于基于选择器的组合来定位元素。它将一系列选择器作为其参数,并在元素匹配任何选择器时返回 true。

div:is(.isPink, .isPretty) {
  color: pink;
}

<div class="isPink">
  <p>
    Pink
  </p>
</div>

<div class="isPretty">
  <p>
    Pretty
  </p>
</div>

<div>
  <span>
    Not Pretty
  </span>
</div>

:where()

:where() 伪类可以根据条件来定位元素。它以条件作为参数,并在元素匹配条件时返回 true。
例如,如果想要定位所有类名以 bold 开头的元素,可以使用 :where()伪类来实现:
将以下伪类添加到上述CSS文件中,将导致任何具有以 bold 开头的CSS类的子元素渲染为粗体。

div:where([class^="bold"]) {
  font-weight: bold;
}

<div class="isPink">
  <p>
    Pink
  </p>
</div>

<div  class="bold_text isPretty">
  <p>
    Pretty
  </p>
</div>


伪元素 :is() 和 :where() 看起来在做同样的事情。但是,伪元素 :is() 用于根据选择器列表匹配元素,而伪元素 :where() 则用于根据条件匹配元素。

:has()

:has() 伪类可以用于基于后代元素来定位元素。它以选择器作为参数,并在元素具有与选择器匹配的后代时返回 true。
例如,如果想要定位所有包含元素的元素,可以使用 :has() 伪类来实现。文章来源地址https://www.toymoban.com/news/detail-607759.html

div:has(p) {
  background-color: purple !important;
}

到了这里,关于CSS技巧::is()、 :where()、:has()伪元素的运用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端:运用html+css+js模仿京东上商品图片区域放大特效

    1. 前言 最近在网页端浏览京东上的商品时,觉得上面的那张gif图片上实现的特效不错,于是自己打算使用html+css+js技术来实现一下上述特效效果,我的实效果如下: 2. 前端界面 主要使用到浮动、绝对定位、相对定位等知识,不了解这部分知识点的读者可以先去了解了解,再

    2024年02月16日
    浏览(56)
  • 【前端技巧】CSS常用技巧碎片(二)

    CSS常用知识碎片(二) 常规渐变和CSS渐变角度方位关系对比表 角度 常规渐变 CSS渐变 0度 向右 向上 正角度 逆时针 顺时针 关于渐变断点,如 linear-gradient(30deg, red 50%, skyblue 50%); ,不同颜色位于同一断点位置时,两个颜色连接处可能会有明显的锯齿。可以在颜色连接处留1px的

    2024年02月12日
    浏览(61)
  • 【前端技巧】CSS常用技巧碎片(一)

    CSS常用技巧碎片(一) 尺寸体系:内在尺寸:fit-content、min-content、max-content,尺寸表现和内容有关;外在尺寸:stretch、available、fill-available,尺寸表现和上下文有关。 可以用 inset: 0; 实现 left: 0; top: 0; right: 0; bottom: 0; 的效果。 渐变边框实现圆角效果可以用 clip-path: inset(0 ro

    2024年02月13日
    浏览(53)
  • 前端:运用html+css+js模仿百度热搜电影榜鼠标移入特效

    1. 实现原理 百度热搜上电影榜鼠标移入特效如上图所示。个人觉得上述特效实现原理为使用相对定位、绝对定位实现的(鼠标移入和没有移入时,元素布局有一些不同而已)。至于鼠标移入时,出现延迟效果,则是在css上设置transition(用于设置过渡效果的)实现的。我的实现效果

    2024年02月15日
    浏览(67)
  • 【前端技巧】CSS常用知识碎片(四)

    CSS常用知识碎片(四) shape-margin属性:控制文字环绕图形时文字与元素边界的距离。 使用CSS Shapes布局实现圆形内排版效果示意

    2024年02月15日
    浏览(57)
  • 【前端技巧】CSS常用知识碎片(八)

    CSS常用知识碎片(八) background-blend-mode 属性用于混合元素背景图案、渐变和颜色; mix-blend-mode 属性用于元素与元素之间的混合; isolation 属性用在祖先元素上,限制 mix-blend-mode 属性设置的混合模式的应用范围。 mix-blend-mode:multiply 值multiply的混合效果是正片叠底,最终效果表

    2024年02月15日
    浏览(35)
  • CSS中通配输入文字的小技巧——如何在元素名中包含通配符

    CSS中,*的作用是通配表示“全部”。遗憾的是,并没有一种通配元素名的方法。 例如,我有好几个东西class都标记为了my-element-序号,就像这样: 我现在希望让所有这些class的东西都应用同一个css规则。可惜,css并不支持这么一种写法: 那怎么办呢?实际上,css针对元素名等

    2024年02月06日
    浏览(33)
  • 【前端】CSS(引入方式+选择器+常用元素属性+盒模型+弹性布局)

    层叠样式表(Cascading Style Sheets) 对元素位置的排版进行精确控制,实现结构和样式的分离 CSS 控制页面的展示效果 HTML决定页面的结构 选择器+{一条/N条声明} 选择器:要修改谁 声明:具体要修改什么内容。声明的属性是键值对,用分号区分,键和值用: 通常情况下,把style放

    2024年04月15日
    浏览(53)
  • CSS笔记(黑马程序员pink老师前端)选择器,字体,文本属性,Emmet语法,元素显示模式,CSS背景

    选择器分为基础选择器和复合选择器两大类。 基础选择器 包括:标签选择器、类选择器、id选择器和通配符选择器。 多类名 可以把一些标签元素共同的样式放到一个类里面。这些标签都可以调用这个公共的类,然后再调用自己独有的类。 复合选择器 基础选择器的组合.包括后

    2024年02月09日
    浏览(61)
  • 前端小技巧:学会通过CSS Hover和JS实现图片放大镜效果

    数据来源: ChatGPT 今天,我们来看一个鼠标悬停出现图片放大镜效果,这是一个比较实用且炫酷的纯CSS和JS实现的页面效果。 HTML HTML代码非常简单,我们只需要一个div容器,内部嵌入一张图片,再添加一个用来显示放大镜的div元素。 CSS CSS代码是实现放大镜效果的重要部分,

    2024年02月02日
    浏览(73)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包