CSS3選擇器

1 CSS選擇器的分類

  • 基本選擇器
  • 層次選擇器
  • 偽類選擇器
  1. 動態(tài)偽類選擇器
  2. 目標偽類選擇器
  3. 語言偽類選擇器
  4. UI元素狀態(tài)偽類選擇器
  5. 結(jié)構(gòu)偽類選擇器
  6. 否定偽類選擇器
  • 偽元素
  • 屬性選擇器

2 基本選擇器

2.1 語法

選擇器 類型 功能描述
* 通配符選擇器 選擇文檔中所有HTML元素
E 元素選擇器 選擇指定類型的HTML元素
#id ID選擇器 選擇指定ID屬性值為"id"的任意類型元素
.class 類選擇器 選擇指定class屬性值為"class"的任意類型的任意多個元素
selector1, selectorN 群組選擇器 將每一個選擇器匹配的元素集合并在一起

2.2 案例

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title>使用CSS3基本選擇器</title>
    <style type="text/css">
        *{margin: 0;padding:0;}
        .clearfix:after,.clearfix:before{display:table;content:""}
        .clearfix:after{clear:both;overflow:hidden}
        .demo { width: 250px; border: 1px solid #ccc; padding: 10px;margin: 20px auto}  
        li {list-style:none outside none; float: left; height: 20px; line-height: 20px; width: 20px;border-radius: 10px; text-align: center; background: #f36; color: green; margin-right: 5px; }
        .demo *{background: orange}
        ul {background:grey}
        #first{background:lime;color:#000}
        #last {background:#000;color:lime}
        .item {background: green;color: #fff;font-weight:bold}
        .item.important {background:red;}
    </style>
</head>
<body>
    <ul class="clearfix demo">
        <li class="first" id="first">1</li>
        <li class="active">2</li>
        <li class="important item">3</li>
        <li class="important">4</li>
        <li class="item">5</li>
        <li>6</li>
        <li>7</li>
        <li>8</li>
        <li>9</li>
        <li class="last" id="last">10</li>
    </ul>
</body>
</html>

2.3 通配符選擇器(*)

通配符選擇器用來選擇所有的元素,當然也可以選擇某個元素下的所有元素友题。

2.4 元素選擇器(E)

2.5 ID選擇器(#id)

在使用ID選擇器之前要在HTML文檔中給定的元素設(shè)置id屬性度宦,id在整個HTML文檔中具有唯一性

2.6 類選擇器(.class)

類選擇器是以獨立于文檔元素的方式來指定元素樣式戈抄。使用前需要給需要的元素設(shè)置class屬性划鸽,與ID選擇器的不同就是一個文檔中可以有多個相同的類名。

在使用多類選擇器時嫂用,要注意嘱函,如果一個多類選擇器包含的類名中其中一個不存在埂蕊,這個選擇器講無法找到相匹配的元素

由于類名在一個HTML文檔中可以同時存在于不同的標簽上蓄氧,比如div上有類名block函似,ul上也有類名block,當僅需要對ul為block定義樣式喉童,此時采用類選擇器并不能達到需要的效果缴淋,其實CSS選擇器還支持帶有標簽的類名選擇器ul.block,這將只匹配class為block的所有ul元素

2.7 群組選擇器(selector1, selectorN)

將具有相同樣式的元素分組在一起,每個選擇器之間用逗號(,)隔開重抖,注意這里省去逗號局變成后代選擇器了露氮。

3 層次選擇器

層次選擇器時通過HTML的DOM元素間的層次關(guān)系獲取元素,其主要的層次關(guān)系包括后代钟沛、父子畔规、相鄰和通用兄弟。

3.1 語法

選擇器 類型 功能描述
E F 后代選擇器 選擇匹配F元素恨统,且匹配的F元素被包含在匹配的E元素內(nèi)
E>F 子選擇器 選擇匹配F元素叁扫,且匹配的F元素是所匹配的E元素的子元素
E+F 相鄰兄弟選擇器 選擇匹配F元素,且匹配的F元素緊接于匹配的E元素后面
E~F 通用選擇器 選擇匹配F元素莫绣,且位于匹配的F元素后的所有匹配的F元素

3.2 案例

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title>使用CSS3層次選擇器</title>
    <style type="text/css">
        *{margin: 0;padding:0;}
        body {width: 300px;margin: 0 auto;}
        div{margin:5px;padding:5px;border: 1px solid #ccc;}
        div div {background: orange;}
        body > div {background: green;}
        .active ~ div {background: red;}
        .active + div {background: lime;}
        
    </style>
</head>
<body>
    <div  class="active">1</div><!-- 為了說明相鄰兄弟選擇器咖祭,在此處添加一個類名active -->
    <div>2</div>
    <div>3</div>
    <div>4
        <div>5</div>
        <div>6</div>
    </div>
    <div>7
        <div>8
            <div>9
                <div>10</div>
            </div>
        </div>
    </div>
</body>
</html>

3.3 后代選擇器(E F)

選擇E元素的所有后代,包括子元素浩嫌、孫輩元素及更深層次的元素

3.4 子選擇器(E>F)

選擇E元素下的所有子元素

3.5 相鄰兄弟選擇器(E+F)

選擇和E元素同層級且緊跟在E元素后面的元素

3.6 通用兄弟選擇器(E~F)

選擇E元素后面的所有兄弟元素

4 動態(tài)偽類選擇器

待續(xù)。怔匣。每瞒。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末埠褪,一起剝皮案震驚了整個濱河市贷掖,隨后出現(xiàn)的幾起案子昆咽,更是在濱河造成了極大的恐慌,老刑警劉巖泻轰,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異黄绩,居然都是意外死亡爽丹,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人延柠,你說我怎么就攤上這事贞间≌裕” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我芹务,道長,這世上最難降的妖魔是什么佳晶? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任菇篡,我火速辦了婚禮,結(jié)果婚禮上铝侵,老公的妹妹穿的比我還像新娘。我一直安慰自己疟丙,他們只是感情好览祖,可當我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布锰悼。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪杯聚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天被去,我揣著相機與錄音,去河邊找鬼。 笑死捣染,一個胖子當著我的面吹牛榕栏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼脆贵,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起五嫂,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后晰洒,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體砌滞,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡题暖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年况芒,在試婚紗的時候發(fā)現(xiàn)自己被綠了祠够。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡皮获,死狀恐怖主届,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情较坛,我是刑警寧澤皇耗,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響絮爷,放射性物質(zhì)發(fā)生泄漏劝萤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一缆娃、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦葫掉、人聲如沸套腹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽琳袄。三九已至,卻和暖如春佑附,著一層夾襖步出監(jiān)牢的瞬間瘟斜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工取劫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留惦银,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓读存,卻偏偏與公主長得像拜英,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,086評論 2 355

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

  • 一,CSS3 選擇器分類 二,選擇器語法 1,基本選擇器語法 選擇器 類型 功能描述 * 通配選擇器 選擇文檔中所...
    newSpring666閱讀 306評論 0 0
  • 第2章 CSS3選擇器 W3C在CSS3的工作草案中把選擇器獨立出來成為一個模塊罗标。實際上竿拆,選擇器是CSS只是中的重...
    白小蟲閱讀 361評論 0 2
  • 2.3 層次選擇器 層次選擇器通過HTML的DOM元素間的層次關(guān)系獲取元素,其主要的層次關(guān)系包括后代、父子钉答、相鄰兄...
    白小蟲閱讀 283評論 0 2
  • 第6章 征服CSS3選擇器 屬性選擇器 在HTML中,通過各種各樣的屬性可以給元素增加很多附加的信息晨汹。例如晃洒,通過i...
    阿振_sc閱讀 413評論 0 1
  • 基礎(chǔ) 屬性選擇器(CSS2) [attr=val] attr代表屬性值,val代表變量值 屬性選擇器的擴展(CSS...
    秋楓殘紅閱讀 332評論 0 1