亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

重拾css(6)——選擇器

vincent_xyb / 2022人閱讀

摘要:選擇器的擴(kuò)展選擇器本來(lái)是的一種規(guī)則,用于為選擇節(jié)點(diǎn)的。但是聰明的人類還是通過選擇器創(chuàng)造出了其他領(lǐng)域非常偉大的作品。被推廣流行的根本原因就是它的基于選擇器的。

前文示圖中展示了瀏覽器的渲染過程,那么css與html是如何結(jié)合的呢?
答案是——選擇器!

1.選擇器

可分為兩大類:

標(biāo)簽選擇器(*是特殊的標(biāo)簽),可單標(biāo)簽,也可上下文多標(biāo)簽;

屬性選擇器(id和class本質(zhì)上也是屬性)。

1.1 標(biāo)簽選擇器 1.1.1 通用選擇器 *

通用選擇器大家應(yīng)該都比較熟悉了,最常用的就是重置瀏覽器默認(rèn)樣式。

1.1.2 單標(biāo)簽

文檔的標(biāo)簽就是最基本的選擇器,例如:

html {color:black;}
p {color:gray;}
h2 {color:silver;}

單標(biāo)簽選擇器可以并列使用,即單標(biāo)簽分組,例如:

html, p, h2 {color:black;}    //同時(shí)選中了html、p、h2三個(gè)標(biāo)簽

1.1.3 多標(biāo)簽

多標(biāo)簽選擇器一般和html上下文有關(guān),它有以下幾種分類:

后代選擇器,選擇一個(gè)祖先的所有子孫節(jié)點(diǎn),例如 div p{…}

子元素選擇器,選擇一個(gè)父元素的所有直屬節(jié)點(diǎn),只包含子代,不包含孫代及更后代,例如 div > p{…}

相鄰兄弟選擇器,選擇某一個(gè)元素緊挨著的兄弟節(jié)點(diǎn),例如 li + li{…}

同代選擇器,選擇某一個(gè)元素的所有同胞節(jié)點(diǎn),即有相同祖先節(jié)點(diǎn)的同代兄弟(不需要相鄰),例如 span ~ a{…}

以上各種情況的組合應(yīng)用(不要組合過于復(fù)雜,編碼講求可讀性第一)
典型應(yīng)用:


樣式實(shí)現(xiàn)代碼:

ul li+li {
    border-top: 1px solid #ccc;
}
1.2 屬性選擇器 1.2.1 特殊1:id選擇器

css選擇器是根據(jù)html節(jié)點(diǎn)的特性來(lái)設(shè)置的,id也是一個(gè)屬性,只是它是一個(gè)比較特殊的屬性,每個(gè)html節(jié)點(diǎn)的id不能重復(fù)。

  由于特殊,而且比較常用,所以就多帶帶給id選擇器一個(gè)“#”,本質(zhì)上就是一個(gè)屬性選擇器。下面兩行代碼的執(zhí)行效果完全相同:

#div1 {border:1px solid #ccc;}
div[id="div1"]{border:1px solid #ccc;}
1.2.2 特殊2:class選擇器

class也是一個(gè)特殊的屬性,之所以把它放在屬性選擇器下,和上文將的id一樣。

1.2.3 屬性選擇器

屬性選擇器有兩種情況:

只通過屬性名選擇:img[title]{…} //選中具體title屬性的img

通過屬性名和屬性值選擇:input[type=’text’]{…} //選中type屬性值為text的input

2.偽類和偽元素

上文提到了若干種選擇器類型,偽類和偽元素可針對(duì)任何一種選擇器使用。

2.1 偽類

偽類分為UI偽類結(jié)構(gòu)化偽類。

2.1.1 UI偽類

常用的UI偽類實(shí)例:

a:link {color: #FF0000}        // 未訪問的鏈接
a:visited {color: #00FF00}    // 已訪問的鏈接 
a:hover {color: #FF00FF}    // 鼠標(biāo)移動(dòng)到鏈接上 
a:active {color: #0000FF}    // 選定的鏈接 

input[type="text"]:focus {}    //獲得鼠標(biāo)焦點(diǎn)的輸入框
#title1:target {}    //突出顯示活動(dòng)的 HTML 錨
2.1.2 結(jié)構(gòu)化偽類(低版本IE不支持)

常用的結(jié)構(gòu)化偽類實(shí)例:

table tr:nth-child(even) {}    //even偶數(shù),odd奇數(shù)
table tr:nth-child(odd) {}
table tr:nth-child(n) {}    //選中第n個(gè)
table tr:first-child {}
table tr:last-child {}
2.2 偽元素

偽元素是非常重要的概念,其中較常用的是:before和:after
基本用法:

            span:before {
                content: "Hello ";    /*或者unicode編碼的形式*/
                color: red;    /*還可以定義添加內(nèi)容的樣式*/
            }
            span:after {
                content: " Zhang";
            }

            Jerry

顯示結(jié)果:

可見:before和:after可以用于為元素前后添加內(nèi)容。

應(yīng)用場(chǎng)景:

第一,添加icon小圖標(biāo)。例如添加fontAwesome圖標(biāo)庫(kù)中的圖標(biāo)

第二,清除浮動(dòng)。

3.選擇器的擴(kuò)展

選擇器本來(lái)是css的一種規(guī)則,用于為css選擇html節(jié)點(diǎn)的。但是聰明的人類還是通過選擇器創(chuàng)造出了其他領(lǐng)域非常偉大的作品。

jQuery
jQuery被推廣流行的根本原因就是它的“Query”——基于css選擇器的“Query”?,F(xiàn)在的瀏覽器都支持querySelectAll()方法了,其實(shí)這就是W3C“抄襲”的jQuery的設(shè)計(jì)。

zen-Coding
jquery可以通過一段css選擇器表達(dá)式從既有的html結(jié)構(gòu)中選擇符合表達(dá)式的dom組,但是zen-coding反其道而行之——可以根據(jù)css選擇器表達(dá)式創(chuàng)造出html節(jié)點(diǎn)。不得不佩服這幫人的創(chuàng)造力。

zen-Coding可以大大提高編碼效率,不妨一試。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/112115.html

相關(guān)文章

  • 重拾css(1)——寫在前邊的話

    摘要:本系列文章重拾主要參考王福朋知多少,結(jié)合自己的理解和學(xué)習(xí)需要,修改或添加了一些內(nèi)容,難免有失偏頗,僅供自我學(xué)習(xí)參考之用。 工作中或多或少的寫一些css,但總感覺掌握的不夠扎實(shí),時(shí)而需要查閱一下知識(shí)點(diǎn)。我想,一方面跟缺少科班出身式的系統(tǒng)學(xué)習(xí)有關(guān),另一方面也苦于一直未尋覓到一套合我胃口教程。直到我讀到了王福朋css知多少系列文章,使我有了重新系統(tǒng)學(xué)習(xí)css的想法。 本系列文章(重拾css)...

    li21 評(píng)論0 收藏0
  • 重拾css(7)——選擇的優(yōu)先級(jí)

    上一節(jié)我們知道,選擇器種類較多,同一個(gè)元素,可以采用不同的選擇器方式選中,此時(shí)哪個(gè)選擇器的樣式會(huì)被最終顯示呢? 特指度 特指度表示一個(gè)css選擇器表達(dá)式的重要程度,每個(gè)選擇器表達(dá)式都可以通過一個(gè)公式計(jì)算出一個(gè)數(shù)值,數(shù)越大,越重要。這個(gè)公式叫I - C - E計(jì)算公式: I —— Id; 100 C —— Class; 10 E —— Element; 1 即,針對(duì)一個(gè)css選...

    Shihira 評(píng)論0 收藏0
  • 重拾css(3)——學(xué)習(xí)css的思路

    摘要:如果我們以為重點(diǎn)看,從上圖中我們可以總結(jié)出學(xué)習(xí)的三個(gè)突破點(diǎn)。這次我們向?yàn)g覽器這位機(jī)器人學(xué)習(xí)一下,看看它寫出來(lái)的能給我們什么幫助。對(duì)選擇器來(lái)說,有一個(gè)很重要的話題級(jí)別。布局布局是的重頭戲,每個(gè)系統(tǒng)的布局都有其各自的特點(diǎn)。 眾所周知,css的運(yùn)行環(huán)境是瀏覽器,那么我們有必要先來(lái)認(rèn)識(shí)下瀏覽器。 1.瀏覽器是怎樣工作的 有篇文章叫《瀏覽器的工作原理:新式網(wǎng)絡(luò)瀏覽器幕后揭秘》,文中言簡(jiǎn)意賅的介紹...

    Kaede 評(píng)論0 收藏0
  • 重拾css(8)——盒子模型

    摘要:盒子的寬度設(shè)置固定寬度的情況在盒子模型中,我們?cè)O(shè)置的寬度都是內(nèi)容寬度,不是整個(gè)盒子的寬度。這樣我們改四個(gè)中的其中一個(gè),都會(huì)導(dǎo)致盒子寬度的改變。包裹內(nèi)容的情況這種情況下比較簡(jiǎn)單,盒子的寬度將隨著內(nèi)容寬度的增加而增加。 1.引言 從這一節(jié)開始,我們就進(jìn)入本系列的第三部分——css呈現(xiàn)。本部分將描述css在頁(yè)面的幾種布局和呈現(xiàn)的特性。包括兩類:文字、塊。第一類——文字。這部分相對(duì)比較簡(jiǎn)單一些...

    SnaiLiu 評(píng)論0 收藏0
  • 重拾css(5)——瀏覽默認(rèn)樣式

    摘要:而依然有效的原因是瀏覽器默認(rèn)樣式的優(yōu)先級(jí)低于外聯(lián)內(nèi)部樣式。例如第二,瀏覽器默認(rèn)樣式還為設(shè)置了,這個(gè)值是對(duì)英文比較友好,中文狀態(tài)下就顯得有點(diǎn)擁擠。 上一節(jié)介紹了樣式的五種來(lái)源,咱們?cè)偻ㄟ^一張圖回顧一下。 showImg(https://segmentfault.com/img/bVM2Rk?w=536&h=245); 對(duì)于上面的三層,咱們大概都比較熟悉了。下面的兩層中,用戶自定義樣式一般...

    guqiu 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<