htmlCSS-----高級選擇器

?目錄

前言

偽類選擇器

狀態類

結構類

?偽元素選擇器

屬性選擇器?


前言

? ? ? ? 前面我們學習了CSS中的相關選擇器(鏈接html&CSS-----CSS選擇器(上)_灰勒塔德的博客-CSDN博客? ? html&CSS-----CSS選擇器(下)_灰勒塔德的博客-CSDN博客)今天我們接著學習比較高級的選擇器,下面就一起來去看看吧!

偽類選擇器

當你希望元素在特定的狀態下發生樣式的變化時,可以使用偽類選擇器。

  • 狀態類

    寫法介紹舉例
    :hover鼠標懸停a:hover{color:pink;}
    :link未被訪問的鏈接(特指a標簽)a:link{color:red};
    :visited被訪問過的鏈接(特指a標簽)a:visited{color:blue;}
    :active被點擊按下狀態a:active{color:green;}

?:hover :active 不僅僅能用在a標簽上。

:hover最為常用最為重要。

可以進一步在偽類后進行選擇,比如:#wrap:hover .nav{display:none;

寫法介紹舉例
:focus獲得焦點狀態(接收鍵盤事件或其他用戶輸入的元素都允許 :focus 選擇器。)input:focus{border:1px solid blue;}
:checked(單選/多選)表單被勾選狀態input:checked{background-color:#aaa;}

?下面看個示例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>*{font-size: 30px;}.first ul li:hover{color: violet;}.second a:link{/* 這里可以改變未被訪問時的a標簽顏色(樣式) */color: red;}.third{color: green;}.forth:active{color: blue;}</style>
</head>
<body><!-- :hover選擇器 --><div class="first"><ul><li>《Re:從零開始的異世界生活》</li><li>《來著新世界》</li><li>《紫羅蘭永恒花園》</li></ul></div><!-- :link選擇器 --><div class="second"><a href="www.baidu.com">訪問百度</a></div><!-- :visited選擇器 --><div class="third"><a href="www.baidu.com" target="_blank">訪問baidu</a></div><!-- :active選擇器 --><div class="forth">點我變顏色,看看吧</div>
</body>
</html>

?效果如下:

1691821211078

結構類

寫法介紹舉例
E:nth-child(n)這個表示選擇列表中的倒數第n個標簽p:nth-child(2){color:red;}
E:nth-of-type(n)E元素父級的第n個E元素,無視其他元素p:nth-of-type(2){color:red;}
E:first-childE元素父級的第一個子元素(該子元素需要滿足E的選擇規則,不滿足則不會選中任何元素)p:first-child{color:red;}
E:last-childE元素父級的最后一個子元素(該子元素需要滿足E的選擇規則,不滿足則不會選中任何元素)p:last-child{color:red;}

上述選擇器 n 所表示的可以是一個 數字 或者 奇數odd 或者 偶數even 或者 一個表達式。

?:nth-child(n) :nth-of-type(n)有對應的“倒著數”屬性 :nth-last-child(n) :nth-last-of-type(n)

?下面看個示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>*{font-size: 30px;}ul li:first-child{color: red;}ul li:last-child{color: red;}</style>
</head>
<body><ul><div>start</div><li>1</li><li>2</li><li>3</li><!-- <div>end</div> --></ul>
</body>
</html>

效果:?這里要注意first-child和last-child這兩個選擇器的使用,因為這里作用的標簽必須是父類元素的第一個或者最后一個,否則不起效果,如上所示。

?偽元素選擇器

偽類選擇器相當于在某種情況下添加一個虛擬類名,而偽元素選擇器則是相當于創建了一個虛擬元素。

寫法介紹舉例
E::before相當于在E元素的最前面添加一個額外的子元素#wrap::before{content:"Hello World!"}
E::after相當于在E元素的最后面添加一個額外的子元素#wrap::after{content:"Hello World!"}

必須擁有 content 樣式,上述兩個偽元素才會生效。

創建的子元素是一個行內元素

::after常用來清除浮動。

content 除了寫文字之外,還可以用url指定一張圖片等其他寫法。

        /* 消除浮動自適應問題的寫法 */E::after{content: '';display: block;clear: both; }

屬性選擇器?

這一類選擇器跟正則匹配搭配使用,實際上并不是怎么用到,比較少用的那種,我們可以去選擇性的去使用?

[attr]屬性選擇器(擁有attr標簽屬性)[title]{ color:red; }
[attr=val]屬性選擇器(擁有標簽屬性attr并值為val)[target=_blank]{ color:red; }
[attr*=val]屬性選擇器(擁有標簽屬性attr并值包含val)[src*=baidu]{border:5px solid pink;}
[attr$=val]屬性選擇器(擁有標簽屬性attr并值以val結尾)[src~=jpg]{ border:5px solid pink; }
[attr^=val]屬性選擇器(擁有標簽屬性attr并值以val開頭)[class^=nav]{ background:pink; }
選擇規則1選擇規則2復合選擇器(多個規則來匹配元素)div.nav.left{ width:100px; } 有nav和left類名的div標簽

?下面看個示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>*{font-size: 30px;}/* 這里匹配到的是含有o字母的選擇器 */div[class*='o']{color: blueviolet;}</style>
</head>
<body><div class="hhh">哈嘍哦</div><div class="food">吃飯了嗎</div><div class="look">快看快看</div>
</body>
</html>

效果:

?好了,以上就是今天的全部內容了,我們下一期再見!

分享一張壁紙:

咒術回戰 - 知乎

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

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

相關文章

計算機視覺中的Transformer

幾十年來&#xff0c;理論物理學家一直在努力提出一個宏大的統一理論。通過統一&#xff0c;指的是將被認為是完全不同的兩個或多個想法結合起來&#xff0c;將它們的不同方面證明為同一基礎現象。一個例子是在19世紀之前&#xff0c;電和磁被看作是無關的現象&#xff0c;但電…

基于java的汽車改裝方案網站設計與實現

摘要 本文主要講述了基于SpringBootMySql開發技術開發的汽車改裝方案網站的設計與實現。這里的汽車改裝方案網站是通過一個平臺使所有的汽車愛好者們可以不用出門就可以體驗到專業的汽車改裝方案設計服務。現實生活中如果需要進行汽車改裝的方案設計&#xff0c;往往要跑很多次…

【大數據之Kafka】三、Kafka生產者之消息發送流程及同步異步發送API

將外部傳送給過來的數據發送到kafka集群。 1 發送原理 &#xff08;1&#xff09;創建main()線程&#xff0c;創建producer對象&#xff0c;調用send方法&#xff0c;經過攔截器&#xff08;可選&#xff09;、序列化器、分區器。 &#xff08;2&#xff09;分區器將數據發送…

【Android Framework (十二) 】- 智能硬件設備開發

文章目錄 前言智能硬件的定義與應用智能硬件產品開發流程智能硬件開發所涉及的技術體系概述關于主板選型主板CPU芯片的選擇關于串口通信 總結 前言 針對我過往工作經歷&#xff0c;曾在一家智能科技任職Android開發工程師&#xff0c;簡單介紹下關于任職期間接觸和開發過的一些…

DDPM: Denoising Diffusion Probabilistic Models

DDPM: Denoising Diffusion Probabilistic Models 去噪擴散模型前向過程-加噪聲反向過程-去噪聲 去噪擴散模型 論文題目&#xff1a;Denoising Diffusion Probabilistic Models (DDPM) 論文來源&#xff1a;NIPS, 2020 論文地址&#xff1a;https://arxiv.org/abs/2006.11239 論…

RH850從0搭建Autosar開發環境【24】- Davinci Configurator之DEM模塊配置詳解(上)

DEM模塊配置詳解 - 上 一、Autosar中DEM模塊簡介1.DEM對其他模塊的依賴2.DEM模塊架構2.1 DEM模塊Dem Satellite(s) 和Master2.2 診斷事件處理2.2.1 基于計數器的算法2.2.2 基于時間的算法三、配置錯誤項處理3.1 容器DemEventParameter3.2 容器DemOperationCycleRef3.3 容器DemO…

13.3 目標檢測和邊界框

錨框的計算公式 假設原圖的高為H,寬為W 詳細公式推導 以同一個像素點為錨框&#xff0c;可以生成 (n個縮放 m個寬高比 -1 )個錨框 錨框的作用&#xff1a; 不用直接去預測真實框的四個坐標&#xff0c;而是&#xff1a; 1.先生成多個錨框。 2.預測每個錨框里是否含有要預測…

C++:哈希表——模擬散列表

模擬散列表 維護一個集合&#xff0c;支持如下幾種操作&#xff1a; 1.“I x”&#xff0c;插入一個數x 2.“Q x”&#xff0c;詢問數x是否在集合中出現過 現在要進行N次操作&#xff0c;對于每個詢問操作輸出對應的結果 輸入格式 第一行包含整數N&#xff0c;表示操作數量 …

【Linux】【驅動】雜項設備驅動

【Linux】【驅動】雜項設備驅動 Linux三大設備驅動1. 我們這節課要講的雜項設備驅動是屬于我們這三大設備驅動里面的哪個呢?2.雜項設備除了比字符設備代碼簡單&#xff0c;還有別的區別嗎?3.主設備號和次設備號是什么? 掛載驅動 雜項設備驅動是字符設備驅動的一種&#xff0…

小程序制作教程:從零開始搭建企業小程序

在如今的數字化時代&#xff0c;企業介紹小程序成為了企業展示與推廣的重要工具。通過企業介紹小程序&#xff0c;企業可以向用戶展示自己的品牌形象、產品服務以及企業文化等內容&#xff0c;進而提高用戶對企業的認知度和信任度。本文將介紹如何從零開始搭建一個企業介紹小程…

Linux常用命令詳細大全

目錄 1、查看目錄與文件&#xff1a;ls2、切換目錄&#xff1a;cd3、顯示當前目錄&#xff1a;pwd4、創建空文件&#xff1a;touch5、創建目錄&#xff1a;mkdir6、查看文件內容&#xff1a;cat7、分頁查看文件內容&#xff1a;more8、查看文件尾內容&#xff1a;tail9、拷貝&a…

小程序 vant 項目記錄總結 使用 scss 分享 訂閱消息 wxs 分包 echarts圖表 canvas getCurrentPages頁面棧

小程序 vant vant 下載 npm init -ynpm i vant/weapp -S --production修改 app.json 將 app.json 中的 “style”: “v2” 去除 修改 project.config.json {..."setting": {..."packNpmManually": true,"packNpmRelationList": [{"p…

域名配置HTTPS

一、注冊域名 這個可以在各大平臺注冊&#xff0c;具體看一下就會注冊了&#xff0c;自己挑選一個自己喜歡的域名。 步驟一般也就是先實名&#xff0c;實名成功了才能注冊域名。 二、辦理SSL證書 這里使用的是阿里云的SSL免費證書 1、申請證書 二、填寫申請 三、域名綁定生…

公司電腦三維圖紙加密、機械圖擋加密軟件

機械圖紙加密軟件的問世&#xff0c;讓很多的網絡公司都大受其帶來的工作中的便利。在安裝了機械圖紙加密軟件后&#xff0c;不僅可以很好的管理員工在工作時的上網娛樂&#xff0c;在對整個公司員工的工作效率上也有著明顯的提高&#xff0c;那么對于機械圖紙加密軟件的具體特…

【C#】靜默安裝、SQL SERVER靜默安裝等

可以通過cmd命令行來執行&#xff0c;也可以通過代碼來執行&#xff0c;一般都需要管理員權限運行 代碼 /// <summary>/// 靜默安裝/// </summary>/// <param name"fileName">安裝文件路徑</param>/// <param name"arguments"…

word 應用 打不開 顯示一直是正在啟動中

word打開來顯示一直正在啟動中&#xff0c;其他調用word的應用也打不開&#xff0c;網上查了下以后進程關閉spoolsv.exe,就可以正常打開word了

演進式架構

演進能力是一種元特征和保護其他所有架構特征的架構封裝器IEEE 的軟件架構定義中的41 視圖模型。它關注不同角色的不同視角&#xff0c;將整個系統劃分成了邏輯視圖、開發視圖、進程視圖和物理視圖架構師確定了可審計性、數據、安全性、性能、合法性和伸縮性是該應用的關鍵架構…

機器學習:特征工程之特征預處理

目錄 特征預處理 1、簡述 2、內容 3、歸一化 3.1、魯棒性 3.2、存在的問題 4、標準化 ?所屬專欄&#xff1a;人工智能 文中提到的代碼如有需要可以私信我發給你&#x1f60a; 特征預處理 1、簡述 什么是特征預處理&#xff1a;scikit-learn的解釋&#xff1a; provide…

linux系統服務學習(六)FTP服務學習

文章目錄 FTP、NFS、SAMBA系統服務一、FTP服務概述1、FTP服務介紹2、FTP服務的客戶端工具3、FTP的兩種運行模式&#xff08;了解&#xff09;☆ 主動模式☆ 被動模式 4、搭建FTP服務&#xff08;重要&#xff09;5、FTP的配置文件詳解&#xff08;重要&#xff09; 二、FTP任務…

Python基礎語法入門(第二十天)——文件操作

一、基礎內容 在Python中&#xff0c;路徑可以以不同的表現形式進行表示。以下是一些常用的路徑表現形式&#xff1a; 1. 絕對路徑&#xff1a;它是完整的路徑&#xff0c;從根目錄開始直到要操作的文件或文件夾。在Windows系統中&#xff0c;絕對路徑以盤符開始&#xff0c;…