CSS邏輯組合偽類

CSS 的邏輯組合偽類有 4 種,分別是::not()、:is()、:where()和:has()。

否定偽類:not()

否定偽類,是在元素與括號里面的參數不匹配的時候,就會對這個偽類進行匹配。比如::not(span):{color:red},這就會匹配不是 span 元素的其他所有元素,包括 html 和 body。

否定偽類:not()的幾個特點:

  1. :not()的優先級是 0,因為它的優先級是由括號里面的參數來定的;
  2. :not()偽類可以同時判斷多個選擇器,比如input:not(:disabled):not(:read-only) {}??,表示匹配不屬于禁用狀態同時也不處于只讀狀態的 input 元素;
  3. not()支持多個表達式,比如:.cs-li:not(li, dd) {}??,還有另外一種寫法:.cs-li:not(li):not(dd) {}??。但是這兩種寫法,要考慮兼容性問題;
  4. :not()也支持選擇符,比如:input:not(.a > .b) { border: red solid; }??;

:is()

:is()偽類,是把括號里面的選擇都分配出去。語法如下:

:is(article) p {}
:is(article, section) p {}
:is(.article[class], section) p {}
.some-class:is(article:not([id]), section) p {}??

is 這個偽類最大的作用,就是在簡化選擇器。比如我們要設置多個 div 內的圖片樣式,樣式代碼如下:

.div-a > img,
.div-b > img,
.div-c > img,
.div-d > img {display: block;width: 100%; height: 100%;border-radius: 50%;
}??

通過 is 偽類來簡化一下:

:is(.div-a,.div-b,.div-c,.div-d)>img{display: block;width: 100%; height: 100%;border-radius: 50%;
}

:where()偽類的功能和 is 是一樣的,只是它的優先級一直都是 0,會忽略括號內參數的優先級。比如::where(.article, section) p {}??的優先級就是 p 標簽的優先級。

關聯偽類:has()

has()偽類,就是匹配某個選擇器。例如:a:has(span) { color:red }??,a 元素內的 span 標簽的字體顏色設置為 red。

這就是 CSS 經常遇到的幾個邏輯偽類。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/207845.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/207845.shtml
英文地址,請注明出處:http://en.pswp.cn/news/207845.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SEO優化是什么,如何進行SEO優化

SEO(Search Engine Optimization)是指通過對網站進行優化,提高其在搜索引擎中的排名,從而增加有機流量和改善用戶體驗的一系列技術和方法。 進行SEO優化可以幫助網站獲得更多的有機搜索流量,并提升網站的曝光度和可見…

Fiddler抓包模擬器(雷電模擬器)

Fiddler設置 List item 打開fiddler,的options 點擊OK,重啟fiddler 模擬器 更改網絡設置 IP可以在電腦上終端上查看 然后在模擬器瀏覽器中輸入IP:端口 安裝證書

ssl什么是公鑰和私鑰?

公鑰(Public Key)與私鑰(Private Key)是通過加密算法得到的一個密鑰對(即一個公鑰和一個私鑰,也就是非對稱加密方式)。公鑰可對會話進行加密、驗證數字簽名,只有使用對應的私鑰才能解…

K8s 入門指南(一):單節點集群環境搭建

前言 官方文檔:Kubernetes 文檔 | Kubernetes 系統配置 CentOS 7.9(2 核 2 G) 本文為 k8s 入門指南專欄,將會使用 kubeadm 搭建單節點 k8s 集群,詳細講解環境搭建部署的細節,專欄后面章節會以實戰代碼介紹…

P1001 A+B Problem題解

對于編程語言語法的學習最好的辦法就是在題目中學習&#xff0c;現在來開啟我們的學習之旅。 題目 輸入兩個整數a,b&#xff0c;輸出它們的和&#xff08;∣a∣,∣b∣≤109&#xff09;。 輸入輸出樣例 輸入 20 30 輸出 50 代碼 #include<iostream> using names…

點擊登錄按鈕二次才跳轉到首頁

1.問題描述 點擊登錄按鈕&#xff0c;調取接口,成功后獲取數據并跳轉到首頁&#xff0c;都沒有問題&#xff0c;也沒有報錯&#xff0c;就是點擊第一次不跳轉&#xff0c;第二次才能跳轉&#xff0c;這是代碼 this.$message({message: "登陸成功",type: "succ…

Vue3+ts----根據配置項,動態生成表單

這里使用的UI框架是ElementPlus&#xff0c;更換其他組件直接更換constant.ts中的type配置和對應的Form組件即可. 大家可以npm install elementplus_dy_form來體驗。 思路&#xff1a; 1.這里需要使用h函數方便控制要渲染的表單 2.傳遞type作為組件或html元素進行渲染&#xff…

PHP基礎 - 輸入輸出

在 PHP 中,有多種方法可以用來輸出內容。下面是其中的幾種: 1、echo: 這是最常見的輸出語句之一,可以輸出一個或多個字符串。它是一個語言結構,可以省略括號。使用示例如下: <?php // 使用 echo 語句輸出一個字符串 echo "Hello, world!\n";// 可以使用…

虛擬儀器的外部接口設計

虛擬儀器的外部接口設計需要考慮多個因素。以下是一些可能涉及的方面&#xff1a; 接口類型&#xff1a;根據實際需要&#xff0c;選擇不同類型的接口。例如&#xff0c;計算機內部插卡式接口有isa接口和pci接口&#xff0c;適用于中小型測試系統。計算機外部通用總線接口有增…

P1035 [NOIP2002 普及組] 級數求和題解

題目 已知&#xff1a;.顯然對于任意一個整數 k&#xff0c;當 n 足夠大的時候,Sn?>k。 現給出一個整數k&#xff0c;要求計算出一個最小的n&#xff0c;使得Sn?>k。 輸入輸出樣例 輸入 1 輸出 2 代碼 #include<iostream> using namespace std; int mai…

周周愛學習之Redis重點總結

redis重點總結 在正常的業務流程中&#xff0c;用戶發送請求&#xff0c;然后到緩存中查詢數據。如果緩存中不存在數據的話&#xff0c;就會去數據庫查詢數據。數據庫中有的話&#xff0c;就會更新緩存然后返回數據&#xff0c;數據庫中也沒有的話就會給用戶返回一個空。 1.緩…

AIGC創作系統ChatGPT網站源碼,Midjourney繪畫,GPT聯網提問/即將支持TSS語音對話功能

一、AI創作系統 SparkAi創作系統是基于ChatGPT進行開發的Ai智能問答系統和Midjourney繪畫系統&#xff0c;支持OpenAI-GPT全模型國內AI全模型。本期針對源碼系統整體測試下來非常完美&#xff0c;可以說SparkAi是目前國內一款的ChatGPT對接OpenAI軟件系統。那么如何搭建部署AI…

leetcode 面試題 02.02. 返回倒數第k個節點

提建議就是&#xff0c;有些題還是有聯系的&#xff0c;建議就收看完 876.鏈表的中間節點&#xff08;http://t.csdnimg.cn/7axLa&#xff09;&#xff0c;再將這一題聯系起來 面試題 02.02. 返回倒數第k個節點 題目&#xff1a; 實現一種算法&#xff0c;找出單向鏈表中倒數第…

這些接口自動化測試工具如果不知道,就真out了!

一、Postman Postman是一款廣受歡迎的API測試工具&#xff0c;除了手動發送HTTP請求的基本功能&#xff0c;它還提供了自動化測試和腳本測試的功能&#xff0c;非常適合進行HTTP接口的自動化測試。 二、Rest-Assured Rest-Assured是一個Java庫&#xff0c;專為REST服務的測試…

java中守護線程的特點是什么?

Java 中守護線程&#xff08;Daemon Thread&#xff09;的特點如下&#xff1a; 隨主線程結束而結束&#xff1a; 守護線程是在后臺運行的線程&#xff0c;當所有的用戶線程都執行完畢后&#xff0c;即主線程結束&#xff0c;守護線程會隨之被終止。它不會阻止 JVM 退出。 不執…

C++異常剖析

什么是異常&#xff1f; 在程序運行的過程中&#xff0c;我們不可能保證我們的程序百分百不出現異常和錯誤&#xff0c;那么出現異常時該怎么報錯&#xff0c;讓我們知道是哪個地方錯誤了呢? C中就提供了異常處理的機制。 一、異常處理的關鍵字 &#xff08;1&#…

聯想電腦重裝系統Win10步驟和詳細教程

聯想電腦擁有強大的性能&#xff0c;很多用戶辦公都喜歡用聯想電腦。有使用聯想電腦的用戶反映系統出現問題了&#xff0c;想重新安裝一個正常的系統&#xff0c;但是不知道重新系統的具體步驟。接下來小編詳細介紹給聯想電腦重新安裝Win10系統系統的方法步驟。 推薦下載 系統之…

Codeforces Round 913 (Div. 3) (A-G)

后天就是 I C P C ICPC ICPC杭州站了&#xff0c;今天把之前做的 d i v 3 div3 div3題補一下&#xff0c;打完這場杭州站這賽季除了 E C F i n a l EC\,\,Final ECFinal就結束了&#xff0c;以后應該要多打 c f cf cf比賽練習保持手感&#xff0c;爭取下賽季沖一下金牌。 感覺這…

客廳顏值擔當:木飾面電視背景墻設計。福州中宅裝飾,福州裝修

你是否也為客廳的裝修設計而煩惱&#xff1f;現在&#xff0c;我為你帶來一款高顏值的木飾面電視背景墻設計&#xff0c;它將是你客廳的亮點所在。 1?? 確定背景墻的尺寸和位置 首先&#xff0c;你需要確定背景墻的尺寸和位置&#xff0c;這取決于你家電視的大小和放置位置。…

重新認識Word——多級列表和項目符號

重新認識Word——多級列表和項目符號 多級列表沒有運用標題樣式但標題格式統一 正式公本文書項目符號和自動編號項目符號自動編號軟回車重新起頭開始編號解決編號與文本距離過大問題 之前我們重新認識了Word里面的樣式&#xff0c;現在的情況就是&#xff0c;我的一些文字已經運…