css3 - css的偽類作用?
問題描述

如圖 這是我在刷面試題得時候 碰見的 想問一下大神 有什么具體的區(qū)別?反正我寫的時候 是沒有發(fā)現(xiàn) 至于作用我還是知道的
問題解答
回答1:單冒號(:)用于CSS3偽類,雙冒號(::)用于CSS3偽元素。W3C關(guān)于CSS3選擇器的規(guī)范中有一段描述:
A pseudo-element is made of two colons (::) followed by the name of the pseudo-element.
This :: notation is introduced by the current document in order to establish a discrimination between pseudo-classes and pseudo-elements. For compatibility with existing style sheets, user agents must also accept the previous one-colon notation for pseudo-elements introduced in CSS levels 1 and 2 (namely, :first-line, :first-letter, :before and :after). This compatibility is not allowed for the new pseudo-elements introduced in CSS level 3.
簡單翻譯一下,大意就是,偽元素由雙冒號和偽元素名稱組成。雙冒號是在當(dāng)前規(guī)范中引入的,用于區(qū)分偽類和偽元素。但是偽類兼容現(xiàn)存樣式,瀏覽器需要同時支持舊的偽類,比如:first-line、:first-letter、:before、:after等。
那么現(xiàn)在就可以完整的回答標(biāo)題中的問題了,對于CSS2之前已有的偽元素,比如:before,單冒號和雙冒號的寫法::before作用是一樣的。
所以,如果你的網(wǎng)站只需要兼容webkit、firefox、opera等瀏覽器,建議對于偽元素采用雙冒號的寫法,如果不得不兼容IE瀏覽器,還是用CSS2的單冒號寫法比較安全。
回答2:這種問題百度就知道了
參見:
偽元素 https://developer.mozilla.org/zh-CN/docs/Web/CSS/Pseudo-elements
偽類 https://developer.mozilla.org/zh-CN/docs/Web/CSS/Pseudo-classes
相關(guān)文章:
1. macos - 無法source activate python272. 運(yùn)行python程序時出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯誤?3. javascript - 微信 H5 授權(quán) 返回鍵4. github - 求助大神啊,win10 git clone error,折騰了幾天都不行,以前原本好好的,突然就這樣了5. android - 如何實(shí)現(xiàn)QQ pad 點(diǎn)擊右側(cè)輸入框,只頂右側(cè)的布局,左側(cè)布局不動6. javascript - npm run build后調(diào)用api返回index.html7. css - 關(guān)于background-position百分比的問題?8. java - 處理數(shù)據(jù)關(guān)聯(lián)關(guān)系,使用數(shù)據(jù)庫表外鍵和代碼內(nèi)維護(hù)相比的優(yōu)缺點(diǎn)?9. javascript - node得到req不能得到boolean10. 小白學(xué)python的問題 關(guān)于%d和%s的區(qū)別

網(wǎng)公網(wǎng)安備