日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > CSS >内容正文

CSS

学习《CSS选择器Level-4》不完全版

發布時間:2025/3/21 CSS 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 学习《CSS选择器Level-4》不完全版 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 概述

1.1 前言

選擇器是CSS的核心組件。本文依據W3C的Selectors Level 4規范,概括總結了Level1-Level4中絕大多數的選擇器,并做了簡單的語法說明及示例演示。希望對程序員有所助益。

2 元素選擇器

2.1 類型選擇器-h1

類型選擇器也可以稱為標簽名選擇器,會選中文檔中該類型元素的實例。

h1 {color: red; } 復制代碼

將文檔中元素類型為h1的顏色設置成紅色。

查看示例程序

2.2 通配選擇器-*

通用選擇器是一種特殊類型選擇器,表示任何元素類型的元素。

* {color: red; } 復制代碼

設置文檔中所有元素的顏色為紅色。

3 屬性選擇器

3.1 屬性存在選擇器-[name]

h1[name] {color: red; } 復制代碼

選中元素 h1 中具有屬性 name 的元素。

查看示例程序

3.2 屬性值選擇器

3.2.1 確切匹配-[title='cool']

h1[title='cool'] {color: red; } 復制代碼

匹配元素 h1 中包含屬性 title 并且屬性值是 cool 的元素。

查看示例程序

3.2.2 包含匹配-[title|='cool']

h1[title~='cool'] {color: red; } 復制代碼

匹配元素 h1 中包含屬性 title 并且屬性值中包含 cool 的元素。

查看示例程序

3.2.3 頭部匹配-[title^='cool']

h1[title|='cool'] {color: red; } 復制代碼

匹配元素 h1 中包含屬性 title ,并且屬性值是 cool 的元素 或以 cool- 開頭的元素。

查看示例程序

3.3 屬性值子串選擇器

3.3.1 頭部匹配-[title^='cool']

h1[title^='cool'] {color: red; } 復制代碼

匹配元素 h1 中包含屬性 title ,并且屬性值串以 cool 開頭的元素。

查看示例程序

3.3.2 尾部匹配-[title$='cool']

h1[title$='cool'] {color: red; } 復制代碼

匹配元素 h1 中包含屬性 title ,并且屬性值串以 cool 結尾的元素。

查看示例程序

3.3.3 部分匹配-[title*='cool']

h1[title*='cool'] {color: red; } 復制代碼

匹配元素 h1 中包含屬性 title ,并且屬性值串包含 cool 子串的元素。

查看示例程序

3.4 類選擇器-.class

.red { color: red; } 復制代碼

匹配文檔中 class 屬性為 red 的元素并設置其顏色為紅色。

查看示例程序

3.5 ID選擇器-#id

#title { color: red; } 復制代碼

匹配文檔中 id 屬性為 title 的元素并設置其顏色為紅色。

查看示例程序

4 語言學偽類

4.1 方向性偽類:dir

dir() 主要用于匹配符合某個方向性的元素,例如 :dir(ltr) 和 :dir(rtl),其中ltr是left to right簡寫,表示從左向右,而rtl是right to left,表示從右向左。

:dir(ltr) {color: red; } 復制代碼

匹配文字方向為從左到右的元素。

查看示例程序

4.2 語言偽類:lang

:lang(fr) {color: red; } 復制代碼

匹配語言為法語的元素并設置其顏色為紅色。

查看示例程序

5 位置偽類

5.1 超鏈接偽類:any-link

匹配帶有 href 屬性的 <a>、<link>、<area>等元素。

:any-link {color: red; } 復制代碼

匹配任意超鏈接,并設置其顏色為紅色。

查看示例程序

5.2 超鏈接偽類:link

:link {color: red; } 復制代碼

匹配未被訪問的超鏈接,并設置其顏色為紅色。

5.3 超鏈接偽類:visited

:visited {color: blue; } 復制代碼

匹配訪問過的超鏈接,并設置其顏色為藍色。

查看示例程序

5.4 超鏈接偽類:local-link

:local-link {color: red; } 復制代碼

匹配本地超鏈接,并設置其顏色為紅色。

5.5 目標偽類:target

<h1><a href="#content">三十課</a></h1> <p id="content">程序員的筆記本</p> <p id="content2">程序員的筆記本2</p> 復制代碼:target {color: red; } 復制代碼

點擊 html 代碼中的內部鏈接,鏈接的目標對象 id 為 content 的 p元素顏色變為紅色。

6 用戶行為偽類

6.1 用戶行為偽類:hover

用戶指針設備懸停于指定元素時,匹配該元素。

:hover {color: red; } 復制代碼

用戶指針懸停于某元素,匹配該元素并將其設置其顏色為紅色。

查看示例程序

6.2 用戶行為偽類:active

:active {background: red; } 復制代碼

當特定元素處于激活狀態時,設置元素背景色為紅色。

查看示例程序

6.3 用戶行為偽類:focus

:focus {background: red; } 復制代碼

當特定元素獲得焦點,設置元素背景色為紅色。

查看示例程序

6.4 用戶行為偽類:focus-within

div:focus-within { border : 1px solid blue; } 復制代碼

當div中的子元素獲得輸入焦點時,設置div元素邊框為1象素值的藍色邊框。

查看示例程序

7 時間軸偽類

7.1 時間偽類:current

在文檔的語音渲染或是顯示字幕期間,常會用到時間軸偽類。

:current(p) {color: red; } 復制代碼

以上規則定義了當前語音渲染段落的顏色為紅色。

7.2 時間偽類:past

:past(p) {color: red; } 復制代碼

以上規則定義了以完成語音渲染段落的顏色為藍色。

7.3 時間偽類:future

:future(p) {color: yellow; } 復制代碼

以上規則定義了以未進行語音渲染段落的顏色為黃色。

8 資源狀態偽類

8.1 資源狀態偽類:playing

:playing {border : 1px solid red; } 復制代碼

匹配當前播放狀態的元素,并為其添加1象素的紅色邊框。

8.2 資源狀態偽類:paused

:playing {border : 1px solid grey; } 復制代碼

匹配當前播放狀態的元素,并為其添加1象素的灰色邊框。

9 輸入偽類

9.1 輸入狀態控制偽類:enabled

:enabled {color: red; } 復制代碼

匹配啟用狀態的元素并設置其顏色為紅色。

9.2 輸入狀態控制偽類:disabled

:disabled{color: yellow; } 復制代碼

匹配禁用狀態的元素并設置其顏色為黃色。

查看示例程序

9.3 只讀偽類:read-only

:read-only {color: red; } 復制代碼

匹配只讀狀態的元素并設置其顏色為紅色。

9.4 讀寫偽類:read-write

:read-write {color: yellow; } 復制代碼

匹配讀寫狀態的元素并設置其顏色為黃色。

查看示例程序

9.5 偽類:placeholder-shown

:placeholder-shown {background: red; } 復制代碼

選中占位符為顯示狀態的元素并設置其背景色為紅色。

查看示例程序

9.6 缺省項偽類:default

:default {color: red; } 復制代碼

匹配缺省的元素并設置其顏色為紅色。

查看示例程序

9.7 選中項偽類:checked

:checked {height: 4em; } 復制代碼

匹配選中的元素并將其高度設成 4em。

查看示例程序

9.8 不確定值偽類:indeterminate

不確定值偽類 :indeterminate 適用于其值處在不確定狀態的元素。例如 : radio 元素組在未被初始選擇的情況下就為不確定值狀態。

:indeterminate {height: 4em; } 復制代碼

匹配不確定值元素并設置高度為 4em。

查看示例程序

9.9 空值偽類:blank

空值偽類 :blank 用來匹配輸入值為空的輸入框,如 textarea 或 input 框。

:blank {background: red; } 復制代碼

目前該偽類兼容性較差。

9.10 合規性驗證偽類:valid

:valid { color: red; } 復制代碼

匹配輸入值合法的元素并設置其顏色為紅色。

9.11 合規性驗證偽類:invalid

:valid { color: blue; } 復制代碼

匹配輸入值不合法的元素并設置其顏色為藍色。

查看示例程序

9.12 范圍偽類:in-range

:in-range {color: red; } 復制代碼

匹配輸入值在定義范圍內的元素并設置其顏色為紅色。

9.13 范圍偽類:out-of-range

:out-of-range {color: blue; } 復制代碼

匹配輸入值不在定義范圍內的元素并設置其顏色為藍色。

查看示例程序

9.14 必填項偽類:required

:required { color: red; } 復制代碼

匹配定義為必填項的元素并設置其顏色為紅色。

9.15 選填項偽類:optional

:optional { color: blue; } 復制代碼

匹配定義為選填項的元素并設置其顏色為藍色。

查看示例程序

10 樹形結構偽類

10.1 根結點偽類:root

偽類 :root 表示文檔的根元素。例如,在DOM文檔中,偽類 :root 與Document對象的根元素匹配。 在HTML中,就表示html元素。

:root {color: red; } 復制代碼

匹配文檔根元素并定義其顏色為紅色。

查看示例程序

10.2 空偽類:empty

:empty { color : red; } 復制代碼

匹配為空的元素并設置其顏色為紅色。

查看示例程序

10.3 元素索引偽類:nth-child

p:nth-child(3n+1) {color: red; } 復制代碼

匹配第1,4,7,10等 p 元素并設置其顏色為紅色。

查看示例程序

10.4 元素索引偽類:nth-last-child

p:nth-child(3n+1) {color: red; } 復制代碼

匹配倒數第1,4,7,10等 p 元素并設置其顏色為紅色。

查看示例程序

10.5 首元素偽類:first-child

p:first-child { color: red; } 復制代碼

匹配第一個 p 元素并設置其顏色為紅色。

查看示例程序

10.6 尾元素偽類:last-child

p:last-child { color: red; } 復制代碼

匹配最后一個 p 元素并設置其顏色為紅色。

查看示例程序

10.7 唯一子元素偽類:only-child

p:only-child { color: red; } 復制代碼

匹配父元素只包含唯一子元素的元素 p 并設置其顏色為紅色。

查看示例程序

10.8 類型索引偽類:nth-of-type

p:nth-of-type(3n+1) { color: red; } 復制代碼

匹配類型為 p 的第1,4,7,10等索引位置的元素并設置其顏色為紅色。

查看示例程序

10.9 類型索引偽類:nth-last-of-type

p:nth-last-of-type(3n+1) { color: red; } 復制代碼

匹配類型為 p 的倒數第1,4,7,10等索引位置的元素并設置其顏色為紅色。

查看示例程序

10.10 類型首元素偽類:first-of-type

p:first-of-type { color: red; } 復制代碼

匹配第一個類型為 p 的元素并設置及顏色為紅色。

查看示例程序

10.11 類型尾元素偽類:last-of-type

p:last-of-type { color: red; } 復制代碼

匹配倒數第一個類型為 p 的元素并設置及顏色為紅色。

查看示例程序

10.12 唯一類型元素偽類:only-of-type

p:only-of-type { color: red; } 復制代碼

匹配父元素只包含唯一類型為 p 子元素并設置其顏色為紅色。

查看示例程序

11 邏輯組合選擇器

11.1 分組選擇器

h1 { color: red } h2 { color: red } h3 { color: red } h4 { color: red } 復制代碼

利用分組選則器,可以將上述CSS規則簡寫成下面的形式。

h1,h2,h3,h4 { color: red } 復制代碼

上述兩種寫法效果相同。

11.2 邏輯組合偽類:is

偽類 :is() 是一個以多個選擇器做為參數的函數,匹配由其參數表示的元素。

目前兼容性較差。

*:is(:hover, :focus) {color: red; } 復制代碼

匹配偽類 hover 和 focus 的元素并設置其顏色為紅色。

11.3 邏輯組合偽類:not

負向邏輯組合偽類 :not() 是一個以多個選擇器做為參數的函數,匹配不在其參數表中的元素。

目前兼容性較差。

button:not([DISABLED]) {color : red; } 復制代碼

匹配不包含 DISABLED 屬性的 button 元素并設置其顏色為紅色。

11.4 邏輯組合偽類:has

目前兼容性較差。

a:has(> img) {border : 1px solid red; } 復制代碼

匹配包含 img 子元素的超鏈接并設置其邊框為1象素紅色。

12 組合選擇器

12.1 后代選擇器

h1 em {color: red; } 復制代碼

匹配 h1 的后代的 em 元素并設置其顏色為紅色。

查看示例程序

12.2 子元素選擇器->

h1 > em { color: red; } 復制代碼

匹配 h1 的子元素 em 并設置其顏色為紅色。

查看示例程序

12.3 相鄰兄弟選擇器-+

h1 + h2 {color: red; } 復制代碼

匹配 h1 的相鄰兄弟元素 h2 并設置其顏色為紅色。

查看示例程序

12.4 兄弟選擇器-~

h1 ~ h2 {color: red; } 復制代碼

匹配 h1 的后面的同級結點 h2 并設置其顏色為紅色。

查看示例程序

13 結尾

13.1 參考文獻

W3C Working Draft : Selectors Level 4 - 21 November 2018

W3scool : CSS 選擇器參考手冊

菜鳥教程 :CSS 選擇器

MDN : CSS Selectors

13.2 結語

本文是@毛瑞依據CSS選擇器規范4擇取的部分CSS選擇器內容編寫而成。因本人水平有限,理解和翻譯時難免有偏差和錯誤,還請程序員朋友多多指正!

文中一些選擇器兼容性還很差,只能做為學習儲備,不適用于實際產品中運用。

費力原創十分不易,請大家轉載時一定要明確注明出處來自【三十課】!

轉載于:https://juejin.im/post/5caef5d56fb9a0688360f754

總結

以上是生活随笔為你收集整理的学习《CSS选择器Level-4》不完全版的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产区在线看 | 午夜影院一区二区 | 影音先锋色小姐 | 色中色综合网 | 少妇一级淫免费观看 | 理论片午午伦夜理片影院99 | 综合激情网 | 国色综合 | 色啪综合| 一区二区福利电影 | 美女涩涩网站 | 性折磨bdsm欧美激情另类 | 中国一极毛片 | 99热精品免费 | 欧美成人中文字幕 | 中文字幕在线视频一区 | 中国一级片黄色一级片黄 | 亚洲精品v日韩精品 | 成人看片网 | 黄色a免费 | 欧亚免费视频 | 30一40一50女人毛片 | 亚洲国产精品人人爽夜夜爽 | 日本久久高清 | 亚洲欧美日韩一区二区 | 日本一区二区三区在线观看 | 一区黄色 | 久久久久无码国产精品一区 | 日日夜夜操操 | 欧美人与性动交ccoo | 亚洲无av在线中文字幕 | 在线国产黄色 | 在线免费观看 | 干欧美| 91免费黄 | av狠狠 | 最好看的2019年中文在线观看 | 亚洲aaaaaaa| 草草视频网站 | 久久成人国产 | 美女脱了内裤喂我喝尿视频 | 男女啪啪无遮挡 | 欧美成人精品二区三区99精品 | 欧美一性一交 | 伊人av在线 | 韩日av在线 | 午夜伦伦电影理论片费看 | 伊人网中文字幕 | 深夜福利免费视频 | 九九激情网 | 一区二区三区高清在线 | 国产麻豆午夜三级精品 | 久久伊人成人 | 91精品又粗又猛又爽 | 国产剧情自拍 | 日韩在线资源 | 含羞草一区二区 | 日韩欧美在线精品 | av电影在线观看网址 | 朴麦妮原版视频高清资源 | 精品婷婷 | 999av视频 | 欧美11p| 国产一区二区视频网站 | 亚洲精品久久久 | 午夜精产品一区二区在线观看的 | 中文字幕乱码人妻无码久久95 | 成人在线网站 | 亚洲天天操 | 免费av中文字幕 | 狠狠干狠狠操 | 综合伊人av| 午夜少妇久久久久久久久 | 欧美精品首页 | 欧美亚洲网站 | 欧美二区在线 | 三级黄色视屏 | 影音先锋中文字幕在线视频 | 日本九九热 | av2014天堂网 | 亚洲人成人一区二区在线观看 | 精品国内自产拍在线观看视频 | 婷婷一区二区三区 | 华丽的外出在线观看 | 色爽视频 | 精品91视频 | 手机在线观看av片 | 熟女丝袜一区 | 在线视频91 | 17草在线 | www成人免费视频 | 51福利视频| 伊人网成人 | 日本免费久久 | 欧美在线影院 | 福利小视频在线观看 | 久久视频一区 | 五月天婷婷在线观看 | 欧美在线免费 |