搜尋
首頁web前端css教學css中什麼是偽類選擇器?偽類選擇器的簡介

本章帶給大家css中什麼是偽類選擇器?偽類選擇器的簡介。讓大家可以了解在css中偽類選擇器的作用,css偽類選擇器有哪些分類等知識。有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。 (相關推薦:《CSS教學》)

css中什麼是偽類選擇器?偽類選擇器的簡介

一、偽類選擇器介紹

##偽類選擇器(簡稱:偽類)透過冒號來定義,它定義了元素的狀態,如點擊按下,點擊完成等,透過偽類可以為元素的狀態修改樣式。

偽類的功能和一般的DOM中的元素樣式相似,但和一般的DOM中的元素樣式不一樣,它不會改變任何DOM內容。只是插入了一些修飾類別的元素,這些元素對於使用者來說是可見的,但是對於DOM來說不可見。偽類的效果可以透過增加一個實際的類別來達到。

何為偽類別?

就是css內建類別css內部本身賦予它一些特性和功能,也就是你不用再class=...或id=...你就可以直接拿來使用,當然你也可以改變它的部分屬性例如:a:link{color:#FF0000;}

二、偽類選擇器的分類

偽類選擇器主要可分為:動態偽類選擇器、UI元素狀態偽類選擇器、結構偽類選擇器、否定偽類選擇器。

下面詳細介紹這些分類的選擇器語法:

1.動態偽類選擇器語法
  • E: link(連結偽類選擇器):選擇匹配的E元素,而且匹配元素被定義了超連結並未被訪問過。常用於連結描點上
  • E:visited(連結偽類選擇器 ):選擇符合的E元素,而且比對元素被定義了超連結並已被造訪過。常用於連結描點上    
  • E:active(使用者行為選擇器):選擇相符的E元素,且符合元素已啟動。常用於連結描點與按鈕上    
  • E:hover (使用者行為選擇器): 選擇相符的E元素,且使用者滑鼠停留在元素E上。 IE6及以下瀏覽器僅支援a:hover    
  • E:focus (使用者行為選擇器): 選擇相符的E元素,且符合元素取得焦點   

#動態偽類選擇器可以用於超連結a標籤的應用中:

    a標籤有4種偽類(即對應四種狀態),如下:
  • #:link 「連結」:超連結點擊之前
  • :visited 「造訪過的」:連結被造訪過之後
  • :hover 「懸停」:滑鼠放到標籤上的時候
  • :active 「啟動」: 滑鼠點擊標籤,但不放手時。

程式碼範例:

/*让超链接点击之前是红色*/
a:link {color: red;}

/*让超链接点击之后是橙色*/
a:visited {color: orange;}

/*鼠标悬停,放到标签上的时候是绿色*/
a:hover {color: green;}

/*鼠标点击链接,但是不松手的时候*/
a:active {color: black;}

a標籤的這四個偽類別選擇器存在著一定的順序,各個樣式之間的順序很有講究,一旦出現排列錯誤就很有可能形成覆蓋,導致其中某個樣式無法顯示。那麼a標籤的這四種偽類選擇器需要怎樣排序才可以使用?

在 CSS 定義中,a:hover 必須被置於 a:link 和 a:visited 之後,才是有效的,a:active 必須被置於 a:hover 之後,才是有效的。

所以,a標籤的這四個偽類選擇器的順序為:a:link ,a:visited,a:hover ,a:active##2.UI元素狀態偽類別選擇器

  • E:checked(選取狀態偽類別選擇器):符合選取的複選按鈕或單選按鈕表單元素   
  • #E:enabled(啟用狀態偽類選擇器 ):符合所有啟用的表單元素   
  • E:disabled(不可用狀態偽類選擇器):符合所有禁用的表單元素   

UI元素狀態偽類選擇器主要是針對於HTML中的Form元素進行操作,最常見的例如我們"type="text"有enable和disabled兩種狀態,前者為可寫入狀態後者為不可狀態;另外"type="radio"和"type="checkbox""有"checked"和"unchecked"兩種狀態。來看兩個實例,比如說你想將"disabled"的文字方塊與別的文字方塊區別出來,你就可以這樣應用:

input[type="text"]:disabled {border:1px solid #999;background-color: #fefefe;}

注意:IE6-8不支援":checked", ":enabled",":disabled"這三種選擇器。

3.結構偽類別選擇器

  • E:fisrt-child :作為父元素的第一個子元素的元素E。與E:nth-child(1)等同    ###
  • E:last-child :作为父元素的最后一个子元素的元素E。与E:nth-last-child(1)等同    

  • E:root:选择匹配元素E所在文档的根元素。在HTML文档中,根元素始终是html,此时该选择器与html类型选择器匹配的内容相同    

  • E F:nth-child(n):选择父元素E的第n个子元素F。其中n可以是整数(1,2,3)、关键字(even,odd)、可以是公式(2n+1),而且n值起始值为1,而不是0.    

  • E F:nth-last-child(n):选择父元素E的倒数第n个子元素F。此选择器与E:nth-child(n)选择器计算顺序刚好相反,但使用方法都是一样的,其中:nth-last-child(1)始终匹配最后一个元素,与last-child等同    

  • E:nth-of-type(n) :选择父元素内具有指定类型的第n个E元素    

  • E:nth-last-of-type(n):选择父元素内具有指定类型的倒数第n个E元素    

  • E:first-of-type:选择父元素内具有指定类型的第一个E元素,与E:nth-of-type(1)等同    

  • E:last-of-tye :选择父元素内具有指定类型的最后一个E元素,与E:nth-last-of-type(1)等同    

  • E:only-child :选择父元素只包含一个子元素,且该子元素匹配E元素    

  • E:only-of-type:选择父元素只包含一个同类型子元素,且该子元素匹配E元素    

  • E:empty: 选择没有子元素的元素,而且该元素也不包含任何文本节点    

结构伪类选择器,可以根据元素在文档中所处的位置,来动态选择元素,从而减少HTML文档对ID或类的依赖,有助于保持代码干净整洁。

结构伪类选择器很容易遭到误解,需要特别强调。如:

p:first-child;

它表示的是:选择父元素下的第一个子元素 p,而不是选择 p 元素的第一个子元素。

注意:

结构伪类选择器中,子元素的序号是从 1 开始的,也就是说,第一个子元素的序号是 1,而不是 0。换句话说,当参数 n 的计算结果为 0 时,将不选择任何元素。

4.否定伪类选择器

E:not(F):匹配所有除元素F外的E元素

例:对form中所有input加边框,但又不想submit也起变化,就可以这样写:

input:not([type="submit"]) {border: 1px solid red;}

以上是css中什麼是偽類選擇器?偽類選擇器的簡介的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
這麼多顏色鏈接這麼多顏色鏈接Apr 13, 2025 am 11:36 AM

最近有一系列有關顏色的工具,文章和資源。請允許我通過將它們四捨五之後關閉幾個標籤,以供您享受。

自動利潤在Flexbox中的工作方式自動利潤在Flexbox中的工作方式Apr 13, 2025 am 11:35 AM

羅賓以前已經介紹過這一點,但是我在過去的幾周里聽到了一些關於它的困惑,看到另一個人在解釋它,我想

移動彩虹移動彩虹Apr 13, 2025 am 11:27 AM

我絕對喜歡三明治網站的設計。在許多美麗的功能中,這些標題是滾動時帶有彩虹的下線。它不是

新年,新工作?讓我們做一個網格驅動的簡歷!新年,新工作?讓我們做一個網格驅動的簡歷!Apr 13, 2025 am 11:26 AM

許多流行的簡歷設計通過以網格形狀鋪設部分來充分利用可用的頁面空間。讓我們使用CSS網格創建一個佈局

將用戶擺脫過多習慣的一種方法將用戶擺脫過多習慣的一種方法Apr 13, 2025 am 11:25 AM

頁面重新加載是一回事。有時,當我們認為它沒有響應或認為新內容可用時,我們會刷新頁面。有時我們只是生氣

域驅動的設計與React域驅動的設計與ReactApr 13, 2025 am 11:22 AM

關於如何在React世界中組織前端應用的指導很少。 (只需移動文件,直到“感覺正確”,大聲笑)。真相

檢測非活動用戶檢測非活動用戶Apr 13, 2025 am 11:08 AM

大多數情況下,您並不真正在乎用戶是否積極參與或暫時非活動。不活躍,意思,也許他們

Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

Wufoo一直在集成方面非常出色。他們與特定應用程序(例如廣告系列顯示器,MailChimp和Typekit)進行集成,但他們也

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器