成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

超實用的三個CSS偽類,直接少些幾十行CSS代碼

開發
:where() CSS 偽類函數接受選擇器列表作為它的參數,將會選擇所有能被該選擇器列表中任何一條規則選中的元素。

一、:where

1.基本使用

:where()  CSS 偽類函數接受選擇器列表作為它的參數,將會選擇所有能被該選擇器列表中任何一條規則選中的元素。

以下代碼,文本都會變成 yellow 顏色:

:where(div p) span {
    color: yellow;
}

<div class="test-div">
    <span>哈哈</span>
</div>
<p class="test-p">
    <span>哈哈</span>
</p>

2.使用場景

其實 :where() 的功能本來就有,只不過有了它之后,實現起這些功能來就更加方便快捷~接下來就來講講它的組合/疊加功能。

我們來看下面的這段 css 代碼:

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

我們可以使用 :where()來簡化這個寫法,使用它找出 div li .cla 這三種選擇器,選擇器可以是標簽,也可以是類名,也可以是選擇器表達式:

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

再來看看使用 :where() 的組合,完成一些功能,我們看以下的代碼:

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

我們完全可以使用 :where() 簡化這個寫法:

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

3.優先級

:where()的優先級是 0,我們可以看下面代碼:

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

最后字體顏色是 yellow。

4.兼容性

全綠~

二、:is

:is()跟:where()可以說一模一樣,區別就是 :is()的優先級不是0,而是由傳入的選擇器來決定的,拿剛剛的代碼來舉個例子:

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

<div class="test">哈哈</div>

這要是 :where(),那么字體顏色會是 yellow,因為它的優先級是 0。

但是如果是 :is()的話,字體顏色會是 pink,因為 類選擇器 優先級比 標簽選擇器 優先級高~

:is(.test) {
    color: pink
}
div {
    color: yellow;
}

<div class="test">哈哈</div>

兼容性

全綠~

三、:has

1.基本使用

舉一個場景例子,我們看以下代碼,一個容器中,圖片是可以顯隱的,我想要實現:

  • 圖片顯示時,字體大小為 12px
  • 圖片隱藏時,字體大小為 20px
<div class="container">
    哈哈哈哈哈
    <img class="test-img" v-if="showImg"></img>
</div>

如果按照以前的做法,就是使用 動態class 的方式去玩完成這個功能,但是現在有 :has()可以通過 css 的方式去完成這件事~

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

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

2.組合使用

現在又有兩個場景:

  • 判斷容器有沒有子img,有的話字體設置為 12px(上面的例子是后代選擇器,不是子選擇器)
  • 判斷容器有沒有一個小相鄰的img,有的話設置字體顏色為 red

我們可以這么去實現:

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

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

再來一個場景,當我 hover 到 子img 上時,我想要讓 container 的字體變粗,可以這么去使用~

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

3.兼容性

還是有一些瀏覽器不支持:

責任編輯:趙寧寧 來源: 前端之神
相關推薦

2020-08-18 08:08:59

CSS偽元素偽類

2024-06-12 15:59:59

前端JavaScrip識別

2024-12-03 09:23:20

2010-09-03 11:24:49

CSS偽類

2023-02-13 15:09:01

開發webCSS技巧

2018-10-16 14:30:22

Python微信朋友圈

2025-06-03 09:06:20

2024-01-07 20:14:18

CSS開發工具

2020-11-16 16:04:42

CSS設計代碼

2013-03-04 09:34:48

CSSWeb

2022-03-14 09:57:30

Python代碼

2021-04-20 09:44:42

CSS函數選擇器

2012-02-07 14:04:53

CSS

2023-06-26 08:06:39

重構代碼冗余

2010-09-06 11:26:18

CSS偽類

2010-09-07 10:57:34

CSS偽類

2010-09-06 15:35:27

2010-08-27 10:12:53

CSS

2023-12-19 13:31:00

CSS前端技巧

2024-02-26 08:20:00

CSS開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区三区在线 | 一级欧美一级日韩片免费观看 | av电影一区二区 | 狼人伊人影院 | 亚洲成人高清 | 老司机免费视频 | 亚洲一区二区中文字幕在线观看 | 欧美中国少妇xxx性高请视频 | 国产视频1区 | 一级黄色生活视频 | 国产精品久久久乱弄 | 国产精品久久国产精品 | 国产精品区二区三区日本 | 天天成人综合网 | 可以免费看的毛片 | 日韩一区二区三区在线观看 | 国产激情偷乱视频一区二区三区 | 国产成人精品一区二区三区在线 | 国产成人精品免费视频大全最热 | 亚洲国产精品一区二区第一页 | 黄色片在线 | 91成人精品 | 特级黄一级播放 | 国产成人福利在线 | 蜜桃视频在线观看免费视频网站www | 亚洲视频在线看 | 看av网址 | 日韩免费视频一区二区 | 国产a级黄色录像 | 日韩在线成人 | 免费在线性爱视频 | 亚洲一区视频在线播放 | 国产女人与拘做受视频 | 成人在线影视 | 久久精品久久久久久 | 别c我啊嗯国产av一毛片 | 国产成人99av超碰超爽 | 精品国产欧美一区二区三区成人 | 国产美女永久免费无遮挡 | 欧美大片一区 | 成人一区二区三区 |