第2章 CSS3選擇器-4

2.9 否定偽類選擇器

否定偽類選擇器":not()"是CSS3的新選擇器,類似jQuery中的":not()"選擇器,主要是用來(lái)定位不匹配該選擇器的元素怔檩。

2.9.1 否定偽類選擇器語(yǔ)法

選擇器 功能描述
E:not(F) 匹配所有除元素F外的E元素

2.9.2 瀏覽器兼容性

IE9及以上瀏覽器支持念祭,主流瀏覽器支持。

2.9.3 實(shí)戰(zhàn)體驗(yàn):改變圖片效果

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>:not 選擇器使用</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        ul{
            width: 690px;
            margin: 20px auto;
            letter-spacing: -4px;
            word-spacing: -4px;
            font-size: 0;
        }
        li{
            font-size: 16px;
            letter-spacing: normal;
            word-spacing: normal;
            display: inline-block;
            *display: inline;
            zoom: 1;
            list-style: none outside none;
            margin: 5px;
        }
        img{
            width: 128px;
            height: 128px;
        }
        .gallery li:nth-child(2){
            -webkit-filter:grayscale(1);
        }
        .gallery li:nth-child(3){
            -webkit-filter:sepia(1);
        }
        .gallery li:nth-child(4){
            -webkit-filter:saturate(0.5);
        }
        .gallery li:nth-child(5){
            -webkit-filter:hue-rotate(90deg);
        }
        .gallery li:nth-child(6){
            -webkit-filter:invert(1);
        }
        .gallery li:nth-child(7){
            -webkit-filter:opacity(0.2);
        }
        .gallery li:nth-child(8){
            -webkit-filter:blur(3px);
        }
        .gallery li:nth-child(9){
            -webkit-filter:drop-shadow(5px 5px 5px #ccc);
        }
        .gallery li:nth-child(10){
            -webkit-filter:saturate(6) hue-rotate(361deg) brightness(0.09);
        }
        .gallery:hover li:not(:hover){
            -webkit-filter:blur(2px) grayscale(1);
            opacity: 0.7;
        }
    </style>
</head>
<body>
    <ul class="gallery">
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
        <li>![](http://upload-images.jianshu.io/upload_images/1875545-aaf7a3416a22a5d4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)</li>
    </ul>
</body>
</html>
:not 選擇器效果
:not 選擇器效果

2.10 偽元素

除了偽類则北,CSS3還支持訪問(wèn)偽元素。偽元素可用于定位文檔中包含的文本痕慢,但無(wú)法再文檔樹(shù)中定位尚揣。偽類一般反映無(wú)法再CSS中輕松或可靠地檢測(cè)到的某個(gè)元素屬性或狀態(tài);另一方面掖举,偽元素表示DOM外部的某種文檔結(jié)構(gòu)快骗。

2.10.1 偽元素:first-letter

:first-letter”用來(lái)選擇文本塊的第一個(gè)字母,除非在同一行中包含一些其他元素塔次》嚼海“:first-letter”通常用來(lái)給文本元素添加排版細(xì)節(jié)。

<p>China’s annual salary guide, divided into upper, middle and lower levels, sets the rate at which enterprises must raise employee salaries.</p>

p:first-letter{
    float: left;
    color: red;
    padding: 4px 8px 0 3px;
    font: 75px/60px Georgia;
}
:first-letter效果

2.10.3 偽元素::before::after

通常配合content屬性一起使用励负。

2.10.4 偽元素::selection

::selection”是用來(lái)匹配突出顯示的文本藕溅。瀏覽器默認(rèn)情況下,選擇網(wǎng)站文本是深藍(lán)色背景继榆,白色字體巾表。(IE9及以上瀏覽器支持)如下所示:

選擇文字默認(rèn)效果
::selection{
    background: red;
    color: #fff;
}
::-moz-selection{
    background: red;
    color: #fff;
}
::selection效果

2.11 屬性選擇器

在HTML中汁掠,通過(guò)各種各樣的屬性可以給元素增加很多附加的信息。例如集币,通過(guò)id屬性可以將不同DIV元素進(jìn)行區(qū)分调塌。CSS2中引入了一些屬性選擇器,這些選擇器可基于元素的屬性來(lái)匹配元素惠猿,而CSS3在CSS2的基礎(chǔ)上擴(kuò)展了這些屬性選擇器羔砾,支持基于模式匹配來(lái)定位元素。

2.11.1 屬性選擇器語(yǔ)法

選擇器 功能描述
E[attr] 選擇匹配具有屬性attr的E元素偶妖。其中E可以省略姜凄,表示選擇定義了attr屬性的任意類型元素
E[attr=val] 選擇匹配具有屬性attr的E元素,并且attr的屬性值為val(其中val區(qū)分大小寫(xiě))趾访,同樣它的元素省略時(shí)標(biāo)識(shí)選擇頂一個(gè)attr屬性值偽val的任意類型元素
<code>E[attr|=val]</code> 選擇匹配E元素态秧,且E元素定義了屬性attr,attr屬性值時(shí)一個(gè)具有val或者以val開(kāi)始的屬性值。
E[attr~=val] 選擇匹配E元素扼鞋,且E元素定義了屬性attr,attr屬性值具有多個(gè)空格分割的值申鱼,其中一個(gè)值等于val。
E[attr*=val] 選擇匹配元素E云头,且E元素定義了屬性attr,其屬性值任意位置包含了val捐友。
E[attr^=val] 選擇匹配元素E,且E元素定義了屬性attr,其屬性值以val開(kāi)頭的任何字符串溃槐。
E[attr$=val] 選擇匹配元素E匣砖,且E元素定義了屬性attr,其屬性值以val結(jié)尾的任何字符串昏滴。

CSS3中常見(jiàn)的通配符

通配符 功能描述 示例
^ 匹配起始符 span[class^=span]表示選擇以類名以“span”開(kāi)頭的所有span元素
$ 匹配終止符 a[href$=pdf]表示選擇以“pdf”結(jié)尾的href屬性的所有a元素
* 匹配任意字符 a[title*=site]匹配a元素猴鲫,而且a元素的title屬性值中任意位置有“site”字符的任何字符串。

2.11.2 瀏覽器兼容性

主流瀏覽器全部支持谣殊,IE7及以上瀏覽器支持拂共。

2.11.3 屬性選擇器的使用方法詳解

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS3屬性選擇器的使用</title>
    <style>
        .demo{
            width: 300px;
            border: 1px solid #ccc;
            padding: 10px;
            overflow: hidden;
            margin: 20px auto;
        }
        .demo a{
            float: left;
            display: block;
            height: 50px;
            width: 50px;
            border-radius: 10px;
            text-align: center;
            background: #aac;
            color: blue;
            font: bold 20px/50px Arial;
            margin-right: 5px;
            text-decoration: none;
            margin: 5px;
        }
    </style>
</head>
<body>
    <div class="demo">
        <a  target="_blank" class="links item first" id="first" title="w3cplus">1</a>
        <a href="" class="links active item" title="test website" target="_blank" lang="zh">2</a>
        <a href="sites/file/test.html" class="links item" title="this is a link" lang="zh-cn">3</a>
        <a href="sites/file/test.png" class="links item" target="_blank" lang="zh-tw">4</a>
        <a href="sites/file/test.jpg" class="links item" title="zh-cn">5</a>
        <a href="milto:w3cplus@hotmail" class="links item" title="website link" lang="zh">6</a>
        <a href="/a.pdf" class="links item" title="open the website" lang="cn">7</a>
        <a href="/abc.pdf" class="links item" title="close ths website" lang="en-zh">8</a>
        <a href="abcdef.doc" class="links item" title="http://www.sina.com">9</a>
        <a href="abd.doc" class="linksitem last" id="last">10</a>
    </div>
</body>
</html>
CSS3屬性選擇器使用默認(rèn)效果
1. E[attr]屬性選擇器
a[id]{background-color: yellow;}
E[attr]屬性選擇器的效果
2. E[attr=val]屬性選擇器
a[id=first]{background-color: red;}
E[attr=val]屬性選擇器的效果
3. E[attr|=val]屬性選擇器
a[lang|=zh]{background-color: yellow;}
E[attr|=val]屬性選擇器的效果
4. E[attr~=val]屬性選擇器
a[title~=website]{background-color: yellow;}
E[attr~=val]屬性選擇器的效果
5. E[attr*=val]屬性選擇器
a[calss*=links]{background-color: yellow;}
E[attr*=val]屬性選擇器的效果
6. E[attr^=val]屬性選擇器
a[href^=http]{background-color: yellow;}
E[attr^=val]屬性選擇器的效果
7. E[attr$=val]屬性選擇器
 a[href$=png]{background-color: yellow;}
E[attr$=val]屬性選擇器的效果

2.11.4 實(shí)戰(zhàn)體驗(yàn):創(chuàng)建個(gè)性化鏈接樣式

略(p81-p84) 太長(zhǎng)了/(ㄒoㄒ)/~~

2.12 本章小結(jié)

本章主要向大家介紹了CSS3核心部分中的選擇器。首先介紹CSS3選擇器的優(yōu)勢(shì)姻几,然后分別詳細(xì)介紹了基本選擇器宜狐、層次選擇器、偽類選擇器鲜棠、屬性選擇器肌厨。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末培慌,一起剝皮案震驚了整個(gè)濱河市豁陆,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌吵护,老刑警劉巖盒音,帶你破解...
    沈念sama閱讀 216,651評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件表鳍,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡祥诽,警方通過(guò)查閱死者的電腦和手機(jī)譬圣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,468評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)雄坪,“玉大人厘熟,你說(shuō)我怎么就攤上這事∥” “怎么了绳姨?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,931評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)阔挠。 經(jīng)常有香客問(wèn)我飘庄,道長(zhǎng),這世上最難降的妖魔是什么购撼? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,218評(píng)論 1 292
  • 正文 為了忘掉前任跪削,我火速辦了婚禮,結(jié)果婚禮上迂求,老公的妹妹穿的比我還像新娘碾盐。我一直安慰自己,他們只是感情好揩局,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,234評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布廓旬。 她就那樣靜靜地躺著,像睡著了一般谐腰。 火紅的嫁衣襯著肌膚如雪孕豹。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,198評(píng)論 1 299
  • 那天十气,我揣著相機(jī)與錄音励背,去河邊找鬼。 笑死砸西,一個(gè)胖子當(dāng)著我的面吹牛叶眉,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播芹枷,決...
    沈念sama閱讀 40,084評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼衅疙,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了鸳慈?” 一聲冷哼從身側(cè)響起饱溢,我...
    開(kāi)封第一講書(shū)人閱讀 38,926評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎走芋,沒(méi)想到半個(gè)月后绩郎,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體潘鲫,經(jīng)...
    沈念sama閱讀 45,341評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,563評(píng)論 2 333
  • 正文 我和宋清朗相戀三年肋杖,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了溉仑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,731評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡状植,死狀恐怖浊竟,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情津畸,我是刑警寧澤逐沙,帶...
    沈念sama閱讀 35,430評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站洼畅,受9級(jí)特大地震影響吩案,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜帝簇,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,036評(píng)論 3 326
  • 文/蒙蒙 一徘郭、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧丧肴,春花似錦残揉、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,676評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至纸巷,卻和暖如春镇草,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背瘤旨。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,829評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工梯啤, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人存哲。 一個(gè)月前我還...
    沈念sama閱讀 47,743評(píng)論 2 368
  • 正文 我出身青樓因宇,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親祟偷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子察滑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,629評(píng)論 2 354

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

  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,748評(píng)論 1 92
  • CSS選擇器結(jié)構(gòu)邏輯圖 接下來(lái)按照結(jié)構(gòu)邏輯圖具體講解各個(gè)選擇器的作用及用法修肠; 基本選擇器 基本選擇器主要有以下5類...
    FoolishFlyFox閱讀 564評(píng)論 0 8
  • 1贺辰、屬性選擇器:id選擇器 # 通過(guò)id 來(lái)選擇類名選擇器 . 通過(guò)類名來(lái)選擇屬性選擇器 ...
    Yuann閱讀 1,631評(píng)論 0 7
  • 一魂爪、CSS選擇器 關(guān)于CSS選擇器,首先請(qǐng)看這里:CSS 選擇器參考手冊(cè) 通過(guò)以上艰管,我們可以將CSS選擇器分為以下...
    fehysunny閱讀 2,246評(píng)論 0 2
  • 一滓侍、CSS選擇器常見(jiàn)的有幾種? 基本選擇器 通配選擇器~選擇文檔中所有的html元素,用一個(gè)*表示 元素選擇器~選...
    dengpan閱讀 962評(píng)論 0 3