当前位置:首页 > 科技  > 软件

超实用的三个CSS伪类,直接少些几十行CSS代码

来源: 责编: 时间:2024-06-21 17:20:43 271观看
导读一、:where1.基本使用:where() CSS 伪类函数接受选择器列表作为它的参数,将会选择所有能被该选择器列表中任何一条规则选中的元素。以下代码,文本都会变成 yellow 颜色::where(div p) span { color: yellow;}<div cl

0de28资讯网——每日最新资讯28at.com

一、:where

1.基本使用

:where()  CSS 伪类函数接受选择器列表作为它的参数,将会选择所有能被该选择器列表中任何一条规则选中的元素。0de28资讯网——每日最新资讯28at.com

以下代码,文本都会变成 yellow 颜色:0de28资讯网——每日最新资讯28at.com

:where(div p) span {    color: yellow;}<div class="test-div">    <span>哈哈</span></div><p class="test-p">    <span>哈哈</span></p>

2.使用场景

其实 :where() 的功能本来就有,只不过有了它之后,实现起这些功能来就更加方便快捷~接下来就来讲讲它的组合/叠加功能。0de28资讯网——每日最新资讯28at.com

我们来看下面的这段 css 代码:0de28资讯网——每日最新资讯28at.com

div a:hover,li a:hover,.cla a:hover,.aa .bb a:hover,[class^='bold'] a:hover{  color: yellow;}

我们可以使用 :where()来简化这个写法,使用它找出 div li .cla 这三种选择器,选择器可以是标签,也可以是类名,也可以是选择器表达式:0de28资讯网——每日最新资讯28at.com

:where(div, li, .cla, .a .b, [class^='bold']) a:hover {    color:

再来看看使用 :where() 的组合,完成一些功能,我们看以下的代码:0de28资讯网——每日最新资讯28at.com

.dark-theme button,.dark-theme a,.light-theme button,.light-theme a{ color: pink;}

我们完全可以使用 :where() 简化这个写法:0de28资讯网——每日最新资讯28at.com

:where(.dark-theme, light-theme) :where(button, a) {    color: pink;}

3.优先级

:where()的优先级是 0,我们可以看下面代码:0de28资讯网——每日最新资讯28at.com

.test {    color: yellow;}:where(.test) {    color: pink}

最后字体颜色是 yellow。0de28资讯网——每日最新资讯28at.com

4.兼容性

全绿~0de28资讯网——每日最新资讯28at.com

0de28资讯网——每日最新资讯28at.com

二、:is

:is()跟:where()可以说一模一样,区别就是 :is()的优先级不是0,而是由传入的选择器来决定的,拿刚刚的代码来举个例子:0de28资讯网——每日最新资讯28at.com

div {    color: yellow;}:where(.test) {    color: pink}<div class="test">哈哈</div>

这要是 :where(),那么字体颜色会是 yellow,因为它的优先级是 0。0de28资讯网——每日最新资讯28at.com

但是如果是 :is()的话,字体颜色会是 pink,因为 类选择器 优先级比 标签选择器 优先级高~0de28资讯网——每日最新资讯28at.com

:is(.test) {    color: pink}div {    color: yellow;}<div class="test">哈哈</div>

兼容性

全绿~0de28资讯网——每日最新资讯28at.com

0de28资讯网——每日最新资讯28at.com

三、:has

1.基本使用

举一个场景例子,我们看以下代码,一个容器中,图片是可以显隐的,我想要实现:0de28资讯网——每日最新资讯28at.com

  • 图片显示时,字体大小为 12px
  • 图片隐藏时,字体大小为 20px
<div class="container">    哈哈哈哈哈    <img class="test-img" v-if="showImg"></img></div>

如果按照以前的做法,就是使用 动态class 的方式去玩完成这个功能,但是现在有 :has()可以通过 css 的方式去完成这件事~0de28资讯网——每日最新资讯28at.com

.container {    font-size: 20px;}.container:has(img) {    font-size: 12px;}或者.container:has(.test-img) {    font-size: 12px;}

2.组合使用

现在又有两个场景:0de28资讯网——每日最新资讯28at.com

  • 判断容器有没有子img,有的话字体设置为 12px(上面的例子是后代选择器,不是子选择器)
  • 判断容器有没有一个小相邻的img,有的话设置字体颜色为 red

我们可以这么去实现:0de28资讯网——每日最新资讯28at.com

.container:has(>img) {    font-size: 12px;}.container:has(+img) {    color: red;}

再来一个场景,当我 hover 到 子img 上时,我想要让 container 的字体变粗,可以这么去使用~0de28资讯网——每日最新资讯28at.com

.container:has(>img:hover) {    color: red;}

3.兼容性

还是有一些浏览器不支持:0de28资讯网——每日最新资讯28at.com

0de28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-95543-0.html超实用的三个CSS伪类,直接少些几十行CSS代码

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python 中的十个不可不知的隐藏系统调用功能

下一篇: 关于 Serilog.NET 中的日志使用技巧

标签:
  • 热门焦点
  • K60至尊版刚预热 一加Ace2 Pro正面硬刚

    Redmi这边刚如火如荼的宣传了K60 Ultra的各种技术和硬件配置,作为竞品的一加也坐不住了。一加中国区总裁李杰发布了两条微博,表示在自家的一加Ace2上早就已经采用了和PixelWo
  • 中兴AX5400Pro+上手体验:再升级 双2.5G网口+USB 3.0这次全都有

    2021年11月的时候,中兴先后发布了两款路由器产品,中兴AX5400和中兴AX5400 Pro,从产品命名上就不难看出这是隶属于同一系列的,但在外观设计上这两款产品可以说是完全没一点关系
  • Automa-通过连接块来自动化你的浏览器

    1、前言通过浏览器插件可实现自动化脚本的录制与编写,具有代表性的工具就是:Selenium IDE、Katalon Recorder,对于简单的业务来说可快速实现自动化的上手工作。Selenium IDEKat
  • 使用AIGC工具提升安全工作效率

    在日常工作中,安全人员可能会涉及各种各样的安全任务,包括但不限于:开发某些安全工具的插件,满足自己特定的安全需求;自定义github搜索工具,快速查找所需的安全资料、漏洞poc、exp
  • 中国家电海外掘金正当时|出海专题

    作者|吴南南编辑|胡展嘉运营|陈佳慧出品|零态LT(ID:LingTai_LT)2023年,出海市场战况空前,中国创业者在海外纷纷摩拳擦掌,以期能够把中国的商业模式、创业理念、战略打法输出海外,他们依
  • 一条抖音4亿人围观 ! 这家MCN比无忧传媒还野

    作者:Hiu 来源:互联网品牌官01 擦边少女空降热搜,幕后推手曝光被网友誉为&ldquo;纯欲天花板&rdquo;的女网红井川里予,近期因为一组哥特风照片登上热搜,引发了一场互联网世界关于
  • 苹果、三星、惠普等暂停向印度出口笔记本和平板电脑

    集微网消息,据彭博社报道,在8月3日印度突然禁止在没有许可证的情况下向印度进口电脑/平板及显示器等产品后,苹果、三星电子和惠普等大公司暂停向印度
  • 机构称Q2全球智能手机出货量同比下滑11% 苹果份额依旧第2

    7月20日消息,据外媒报道,研究机构的报告显示,由于需求下滑,今年二季度全球智能手机的出货量,同比下滑了11%,三星、苹果等主要厂商的销量,较去年同期均有下
  • “买真退假” 这种“羊毛”不能薅

    □ 法治日报 记者 王春   □ 本报通讯员 胡佳丽  2020年初,还在上大学的小东加入了一个大学生兼职QQ群。群主&ldquo;七王&rdquo;在群里介绍一些刷单赚
Top