<偽類和偽元素> 介紹和解析

偽類: Pseudo-classes

  • 定義: 在CSS中,偽類選擇器根據(jù)元素的狀態(tài)而不是文檔樹中的信息來為其指定目標(biāo)胰锌。(源自:MDN文檔)
  • 作用: 向某些選擇器添加特殊的效果
  • 語法: E: link | visited | ... { property: value;}

文檔關(guān)鍵字解讀

根據(jù)元素的狀態(tài)

文檔關(guān)鍵詞中有:"根據(jù)"這個詞,這就意味著 偽類 自帶一種 "被動光環(huán)",
也就是說 它不會主動觸發(fā), 只有當(dāng)某種條件成立以后,才會'被迫'出來清掃戰(zhàn)場 -> 也就是 呈現(xiàn)某種狀態(tài).

下面是所有偽類的清單圖: (來源鏈接:https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes)

11122.png

上面MDN文檔 毫無人性 的把所有 偽類 從A-Z 給羅列出來,
讓人 不明覺厲,進(jìn)而讓人 敬而遠(yuǎn)之. 但是么得關(guān)系,
我們可以運(yùn)用  | 真·分類無雙 | 卍大法 來給它送上愛心SM套餐.
- [ ] 注: 以下分類是按 常用度 重要度 來分先后順序.


靜態(tài)偽類: 用于超鏈接樣式 比如a標(biāo)簽

 a: link { ...}     /* 超鏈接點(diǎn)擊 之前 的元素樣式 */
 a: visited {...}   /* 被訪問過   之后 的元素樣式 */

動態(tài)偽類: 所有標(biāo)簽都適用的樣式

E: hover {...}   /* 鼠標(biāo)放到標(biāo)簽上的時候  */
E: active {...}  /* 鼠標(biāo)點(diǎn)擊標(biāo)簽衩茸,但是不松手時  */
E: focus {...}   /* 是某個標(biāo)簽獲得焦點(diǎn)時的樣式(比如某個輸入框獲得焦點(diǎn)) */

注意:

  • 如果一個元素同時有: link , visited , hover , active 的順序是固定的,不能亂來. 因?yàn)樗麄冎g存在 邏輯先后,不能更改.
  • a:link芹血、a:visited這兩個偽類的時候,要么同時寫楞慈,要么同時不寫幔烛。如果只寫a屬性和a:link屬性,不規(guī)范囊蓝。

結(jié)構(gòu)偽類: 用于匹配指定的目標(biāo)子元素

E: nth-child(n) {...} /* 匹配屬于E父元素的第 N (大于等于1的整數(shù)) 個子元素饿悬,不論元素的類型 
                         匹配步驟解析:① 根據(jù)E自身->通過DOM樹定位到父元素.
                                     ② 其父元素掃描自己的所有子元素(不分類型),給他們按順序從1開始編號.
                                     ③ 在依據(jù)(n)的值,尋找到編號為n的子元素
                     */
                     
E: nth-last-child(n) {...} /* 匹配屬于其元素的第 N 個子元素的每個元素,不論元素的類型聚霜,從最后一個子元素開始計(jì)數(shù)
                              與上面nth:child邏輯步驟相同,只不過倒過來而已.
                           */
                           
E:nth-of-type(n) {...}  /* 匹配屬于父元素的特定類型的 第N個 子元素的 每個元素(如果有多個父容器) */
E:nth-last-of-type(n) {...} /* 匹配屬于父元素的特定類型的第 N 個子元素的每個元素狡恬,從最后一個子元素開始計(jì)數(shù) */
E:first-child {...} /* 匹配屬于 其父元素 的首個子元素的指定選擇器 */ 
E:last-child {...}  /* 匹配屬于 其父元素 的最后一個子元素的每個元素 */
E:only-child {...}  /* 匹配屬于 其父元素 的 唯一 子元素的每個元素(也就是 所有父容器 下符合E元素類型 且 只有一個'獨(dú)苗') */
E:first-of-type {...} /* 匹配屬于 其父元素 下跟元素E type類型一致的首個子元素(可以是多個,如果有多個父容器) */
E:last-of-type {...} /*  匹配屬于 其父元素 下跟元素E type類型一致的 倒數(shù)最后一個的子元素(可以是多個,如果有多個父容器) */
E:only-of-type {...} /* 匹配屬于其父元素的特定類型的唯一子元素的每個元素(父容器下可以有多個子元素,但符合E type類型的子元素只有一個) */
E:empty {...} /* 選擇沒有子元素的元素,且不包含節(jié)點(diǎn), 也就是空殼標(biāo)簽 */
E:root {...}  /* 匹配元素所有在文檔的根元素 也就是 html標(biāo)簽,一般很少用到 */

否定偽類: 用來匹配 非指定 元素/選擇器的每個元素

E:not(selector) {...}  /* 選中E標(biāo)簽或容器下的符合selector標(biāo)記的所有元素 */

目標(biāo)偽類: 用來匹配頁面URI(標(biāo)識蝎宇、定位任何資源的字符串)中某一個標(biāo)識符的目標(biāo)元素

E: target { ... }  /* 選擇匹配E的所有元素弟劲,且匹配元素被相關(guān)URL指向 */

語言偽類: 用來匹配使用指定語言的元素

E:lang(language){ ... }  /* 向帶有指定 lang 屬性開始的元素添加樣式 ,使用頻率低 */

偽元素: Pseudo-elements

  • 定義: CSS偽元素是添加到選擇器的關(guān)鍵字,可用于設(shè)置所選元素的特定部分的樣式姥芥。(源自:MDN文檔)
  • 作用: 用于設(shè)置所選元素的特定部分的樣式
  • 語法: selector::pseudo-element {property: value;}

文檔關(guān)鍵字解讀

**添加/設(shè)置所選元素特定部分 **

文檔關(guān)鍵詞中有:"添加/設(shè)置"這個詞,這就表示 偽元素是一種 "增量 或 元素本來就有的一部分.""
 也就是說 把 元素當(dāng)做一個 可操作的物體,可以給這個物體附著新零件 或 拆出部分零件來修理-->進(jìn)行樣式設(shè)置. 

下面是所有偽類的清單圖: (來源鏈接:下面是所有偽類的清單圖: (來源鏈接:https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes))

22221111.png

下面介紹幾個常用的:

  • 注意 偽元素是css3新增的功能選擇器, 最好選擇器 和 偽類元素 需用 兩個 : 隔開,才符合規(guī)范.
E::after | ::before { ... } /*  用于在css渲染中向元素邏輯上的頭部或尾部添加內(nèi)容兔乞。
這些添加不會出現(xiàn)在DOM中,不會改變文檔內(nèi)容,不可復(fù)制庸追,僅僅是在css渲染層加入 ,所以盡量使用它們顯示修飾性內(nèi)容
常用來 清除浮動*/
E::selection { ... } /* 應(yīng)用于文檔中被用戶選中高亮的部分(比如鼠標(biāo)劃選的文字) */
E::first-letter { ... } /*  選中整塊文字第一行的第一個字(中英文皆可), 且文字之前沒有其他內(nèi)容,
E::first-line { ... } /* 將樣式只應(yīng)用于元素的首行 */
- [ ] 其他偽元素用到得很少, 如果需要 鏈接: https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes 點(diǎn)擊查閱
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末霍骄,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子淡溯,更是在濱河造成了極大的恐慌读整,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件咱娶,死亡現(xiàn)場離奇詭異绘沉,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)豺总,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進(jìn)店門车伞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人喻喳,你說我怎么就攤上這事另玖。” “怎么了表伦?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵谦去,是天一觀的道長。 經(jīng)常有香客問我蹦哼,道長鳄哭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任纲熏,我火速辦了婚禮妆丘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘局劲。我一直安慰自己勺拣,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布鱼填。 她就那樣靜靜地躺著药有,像睡著了一般。 火紅的嫁衣襯著肌膚如雪苹丸。 梳的紋絲不亂的頭發(fā)上愤惰,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天,我揣著相機(jī)與錄音赘理,去河邊找鬼宦言。 笑死,一個胖子當(dāng)著我的面吹牛感憾,可吹牛的內(nèi)容都是我干的蜡励。 我是一名探鬼主播令花,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼阻桅,長吁一口氣:“原來是場噩夢啊……” “哼凉倚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起嫂沉,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤稽寒,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后趟章,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體杏糙,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年蚓土,在試婚紗的時候發(fā)現(xiàn)自己被綠了宏侍。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡蜀漆,死狀恐怖谅河,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情确丢,我是刑警寧澤绷耍,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站鲜侥,受9級特大地震影響褂始,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜描函,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一崎苗、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧舀寓,春花似錦益缠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至轰豆,卻和暖如春胰伍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背酸休。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工骂租, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人斑司。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓渗饮,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子互站,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容