css3中的偽類和偽元素

CSS3偽類的功能有兩種:

1.獲取不存在與DOM樹中的信息。比如<a>標(biāo)簽的:link、:visited等,這些信息不存在與DOM樹結(jié)構(gòu)中,只能通過CSS選擇器來獲取;
2.獲取不能被常規(guī)CSS選擇器獲取的信息。比如偽類:target,它的作用是匹配文檔(頁面)的URI中某個(gè)標(biāo)志符的目標(biāo)元素,例如我們可以通過如下代碼來實(shí)現(xiàn)頁面內(nèi)的區(qū)域跳轉(zhuǎn):

<ul class="tabs">
    <li><a href="#tab1">標(biāo)簽一</a></li>
    <li><a href="#tab2">標(biāo)簽二</a></li>
    <li><a href="#tab3">標(biāo)簽三</a></li>
</ul>
<div id="tab1" class="tab_content">
<!--tabed content--></div>
<div id="tab2" class="tab_content">
<!--tabed content--></div>
<div id="tab3" class="tab_content">
<!--tabed content--></div>

CSS代碼

.tab_content {
  height: 200px;
  background: red;
  margin-bottom: 100px;
}
#tab1:target, #tab2:target, #tab3:target {
    background:blue;
}

二:偽元素

同樣,第一段話是偽元素的清晰定義,也是偽元素與偽類最大的區(qū)別。簡單來說,偽元素創(chuàng)建了一個(gè)虛擬容器,這個(gè)容器不包含任何DOM元素,但是可以包含內(nèi)容。另外,開發(fā)者還可以為偽元素定制樣式。

舉個(gè)綜合使用偽類和偽元素的栗子:

q:lang(de)::after{
    content: " (German) ";
}
q:lang(en)::after{
    content: " (English) ";
}
q:lang(fr)::after{
    content: " (French) ";
}
q:not(:lang(fr)):not(:lang(de)):not(:lang(en))::after{
    content: " (Unrecognized language) ";
}

以上代碼通過偽類"lang獲取不同lang屬性的節(jié)點(diǎn),并為之設(shè)置偽元素::after,偽元素的內(nèi)容是此節(jié)點(diǎn)的語言類型。

最后,總結(jié)一下偽類與偽元素的特性及其區(qū)別:

1 偽類本質(zhì)上是為了彌補(bǔ)常規(guī)CSS選擇器的不足,以便獲取到更多信息;
2 偽元素本質(zhì)上是創(chuàng)建了一個(gè)有內(nèi)容的虛擬容器;
3 CSS3中偽類和偽元素的語法不同;
4 可以同時(shí)使用多個(gè)偽類,而只能同時(shí)使用一個(gè)偽元素;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,154評(píng)論 1 92
  • 本文轉(zhuǎn)載自:眾成翻譯譯者:為之漫筆鏈接:http://www.zcfy.cc/article/239原文:http...
    極樂君閱讀 7,545評(píng)論 1 62
  • 剛開始看到這兩個(gè)東西的時(shí)候還以為這兩個(gè)是一樣的,是因?yàn)闆]有很清楚的了解它們,所以就研究了一下它兩是什么以及有什么不...
    小m_up閱讀 503評(píng)論 1 0
  • 這是一場煙火的絢爛,隔著空間與時(shí)間,人情空瘦,結(jié)局迢迢,悲歡終究渺渺。華文錦書承起的年華,是所有人的信仰。 ...
    深徒閱讀 254評(píng)論 0 1
  • 最近可能要跟大家多說說話了。。。 為什么?? 因?yàn)槲以趯W(xué)車。。。 “嘿,你學(xué)車學(xué)得怎么樣?”寢室人突然圍過來問。一...
    丁鐺鐺閱讀 375評(píng)論 0 1

友情鏈接更多精彩內(nèi)容