成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

16個非常有用的CSS偽選擇器,你千萬不要錯過了!

新聞 前端
這篇文章鼓勵構(gòu)造 UI 時使用更多純 CSS 和更少的 JS。熟悉所有的 CSS 是實(shí)現(xiàn)這個目標(biāo)的一種方法 —— 另一種是實(shí)施最佳實(shí)踐和盡可能的減少代碼。

 [[340274]]

這篇文章鼓勵構(gòu)造 UI 時使用更多純 CSS 和更少的 JS。熟悉所有的 CSS 是實(shí)現(xiàn)這個目標(biāo)的一種方法 —— 另一種是實(shí)施最佳實(shí)踐和盡可能的減少代碼。

1、::first-line | 選擇首行文本

這個偽元素選擇器選擇換行之前文本的首行。

  1. p:first-line { 
  2.     color: lightcoral; 

2、::first-letter | 選擇首字母

這個偽元素選擇器應(yīng)用于元素中文本的首字母。

  1. .innerDiv p:first-letter { 
  2.     color: lightcoral; 
  3.     font-size: 40px 

3、::selection | 選擇高亮(被選中)的區(qū)域

應(yīng)用于任何被用戶選中的高亮區(qū)域。通過 ::selection 偽元素選擇器,我們可以將樣式應(yīng)用于高亮區(qū)域。

  1. div::selection { 
  2.     background: yellow; 

4、:root | 根元素

:root 偽類選中文檔的根元素。在 HTML 中,為 HTML 元素。在 RSS 中,則為 RSS 元素.這個偽類選擇器應(yīng)用于根元素,多用于存儲全局 CSS 自定義屬性。

5、:empty | 僅當(dāng)元素為空時觸發(fā)

這個偽類選擇器將選中沒有任何子項的元素。該元素必須為空。如果一個元素沒有空格、可見的內(nèi)容、后代元素,則為空元素。

  1. div:empty { 
  2.     border: 2px solid orange; 
  3.  
  4. <div></div> 
  5. <div></div> 
  6. <div> 
  7. </div> 

這個規(guī)則將應(yīng)用于空的 div 元素。這個規(guī)則將應(yīng)用于第一個和第二個 div ,因為他們是真為空,而第三個 div 包含空格。

6、:only-child | 選擇僅有的子元素

匹配父元素中沒有任何兄弟元素的子元素。

  1. .innerDiv p:only-child { 
  2.     color: orangered; 

7、:first-of-type | 選擇第一個指定類型的子元素

  1. .innerDiv p:first-of-type { 
  2.     color: orangered; 

這將應(yīng)用于 .innerDiv 下的第一個 p 元素。

  1. <div class="innerDiv"
  2.     <div>Div1</div> 
  3.     <p>These are the necessary steps</p> 
  4.     <p>hiya</p> 
  5.      
  6.     <p> 
  7.         Do <em>not</em> push the brake at the same time as the accelerator. 
  8.     </p> 
  9.     <div>Div2</div> 
  10. </div> 

這個 p (“These are the necessary step”)將被選中。

8、:last-of-type | 選擇最后一個指定類型的子元素

:first-of-type 一樣,但是會應(yīng)用于最后一個同類型的子元素。

  1. .innerDiv p:last-of-type { 
  2.     color: orangered; 

這將應(yīng)用于 innerDiv 下的最后一個 p 段落元素。

  1. <div class="innerDiv"
  2.     <p>These are the necessary steps</p> 
  3.     <p>hiya</p> 
  4.     <div>Div1</div> 
  5.     <p> 
  6.         Do the same. 
  7.     </p> 
  8.     <div>Div2</div> 
  9. </div> 

因此,這個 p 元素(“Do the same”)將被選中。

9、:nth-of-type() | 選擇特定類型的子元素

這個選擇器將從指定的父元素的孩子列表中選擇某種類型的子元素。

  1. .innerDiv p:nth-of-type(1) { 
  2.     color: orangered; 

10、:nth-last-of-type() | 選擇列表末尾中指定類型的子元素

這將選擇最后一個指定類型的子元素。

  1. .innerDiv p:nth-last-of-type() { 
  2.     color: orangered; 

這將選擇 innerDiv 列表元素中包含的最后一個段落類型子元素。

  1. <div class="innerDiv"
  2.     <p>These are the necessary steps</p> 
  3.     <p>hiya</p> 
  4.     <div>Div1</div> 
  5.     <p> 
  6.         Do the same. 
  7.     </p> 
  8.     <div>Div2</div> 
  9. </div> 

innerDiv 中最后一個段落子元素 p (“Do the same”)將會被選中。

11、:link | 選擇一個未訪問過的超鏈接

這個選擇器應(yīng)用于未被訪問過的鏈接。常用于帶有 href 屬性的 a 錨元素。

  1. a:link { 
  2.     color: orangered; 
  3.  
  4. <a href="/login">Login<a> 

這將選中未被點(diǎn)擊過帶有 href 的指定界面的 a 錨點(diǎn)元素,選中的元素中的文字將會顯示為橙色。

12、:checked | 選擇一個選中的復(fù)選框

這個應(yīng)用于已經(jīng)被選中的復(fù)選框。

  1. input:checked { 
  2.     border: 2px solid lightcoral; 

這個規(guī)則應(yīng)用到所有被選中的復(fù)選框。

13、:valid | 選擇一個通過驗證的元素

這主要用于可視化表單元素,以讓用戶判斷是否驗證通過。驗證通過時,默認(rèn)元素帶有 valid屬性。

  1. input:valid { 
  2.     boder-color: lightsalmon; 

14、:invalid | 選擇一個未通過驗證的元素

:valid 一樣,但是會應(yīng)用到未通過驗證的元素。

  1. input[type="text"]:invalid { 
  2.     border-color: red; 

15、:lang() | 選擇指定語言的元素

應(yīng)用于指定了語言的元素。可以通過以下兩種方式使用:

  1. p:lang(fr) { 
  2.     background: yellow; 

或者

  1. p[lang|="fr"] { 
  2.     background: yellow; 
  3.  
  4. <p lang="fr">Paragraph 1</p> 

16、:not() | 對于選擇取反(這是一個運(yùn)算符)

否定偽類選擇器選中相反的。讓我們看一個示例:

  1. .innerDiv :not(p) { 
  2.     color: lightcoral; 
  3.  
  4. <div class="innerDiv"
  5.     <p>Paragraph 1</p> 
  6.     <p>Paragraph 2</p> 
  7.     <div>Div 1</div> 
  8.     <p>Paragraph 3</p> 
  9.     <div>Div 2</div> 
  10. </div> 

Div 1 和 Div 2 會被選中,因為他們不是 p 元素。

結(jié)論

就這些了。這是全部內(nèi)容。還有更多的偽選擇器,但是為非標(biāo)準(zhǔn)的,因此我省略了它們。感謝閱讀

責(zé)任編輯:張燕妮 來源: 知乎
相關(guān)推薦

2023-04-11 16:31:10

開發(fā)React 庫Web

2022-09-19 00:46:18

JavaScrip功能開發(fā)

2012-04-17 09:44:08

JavaScript

2012-03-01 09:15:41

HTML 5

2020-10-29 10:00:55

Python函數(shù)文件

2023-02-19 15:22:22

React技巧

2009-03-24 14:23:59

PHP類庫PHP開發(fā)PHP

2011-07-07 17:16:43

PHP

2017-08-02 13:32:18

編程Java程序片段

2025-02-13 09:37:26

2020-08-27 10:10:46

NodeJs 軟件Express

2023-06-13 15:15:02

JavaScript前端編程語言

2018-08-03 10:02:05

Linux命令

2021-10-30 18:59:15

Python

2022-09-02 23:08:04

JavaScript技巧開發(fā)

2013-05-31 15:57:59

Windows 8.1

2013-11-05 10:03:22

Eclipse功能

2022-04-14 09:01:19

CSS父選擇器CSS類

2013-06-14 14:57:09

Java基礎(chǔ)代碼

2023-11-02 11:55:37

工具網(wǎng)站開發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产精品久久久久久久午夜 | 日韩国产在线观看 | 在线观看视频一区 | 免费视频一区二区 | 成年人免费在线视频 | 国产欧美精品一区二区 | 日韩电影一区二区三区 | 精品国产欧美一区二区三区不卡 | 久久av一区二区 | 永久免费在线观看 | 黄免费观看视频 | 国产精品免费一区二区三区 | 黄色一级免费看 | 久久99精品久久久久久 | 2020天天操 | 精品一区二区三区91 | 99视频在线播放 | 黄色网址在线免费播放 | 日韩免费视频 | 美女高潮网站 | 日韩高清国产一区在线 | 99精品久久 | 作爱视频免费看 | 欧美性精品| 在线观看国产 | 国产欧美一区二区三区在线看 | 在线亚洲一区二区 | 国产在线播放av | 欧美日韩高清在线一区 | 成人激情视频在线播放 | 中文字幕亚洲区 | 日韩av在线免费 | 国产成人免费视频网站视频社区 | 欧美高清视频 | 精品无码久久久久久国产 | 狠狠躁18三区二区一区 | 日韩一二区 | 久久精品视频在线播放 | 亚洲视频一区二区三区四区 | 一本色道久久综合亚洲精品高清 | 欧美jizzhd精品欧美巨大免费 |