❶ 跪求html 5 的CSS3選擇器中的 反選偽類選擇器:not 示例
#div:not(':last-child')
選擇id=div的除了最後一個子元素以外的所有子元素
#div:not(p) 選擇id=div的元素下所有不是p元素的子元素
❷ CSS選擇器針對超級鏈接進行設置的狀態有哪些
這位網友你好,你是不是在做練習題或者是考試的題目啊,答案回如下:
a:link {} /* 這是鏈接的答一般樣式*/
a:visited {} /* 這是已經訪問過的鏈接樣式*/
a:hover {} /* 這是當滑鼠滑過鏈接或者滑鼠懸浮於鏈接上的樣式 */
a:active {} /* 這是鏈接在激活瞬間的樣式,一般可以忽略,或者設置為hover的樣式*/
❸ 用css偽類選擇器怎樣對網頁中指定超鏈接設置特定的樣式(不是所有的超鏈接,是指定的一部分)謝謝了!
你可以在a 鏈接的加過一個class 或者 用 父級+ a 的方式也可以啊
這樣就只是指定一部份了
❹ 怎麼提高CSS選擇器效率
首先我們需要清楚,瀏覽器是如何讀取選擇器,以識別樣式,並將相應的樣式附於對應的HTML元素,達到美化頁面的效果。Chris
Coyier曾在《Efficiently Rendering
CSS》一文中說過「瀏覽器讀取你的選擇器,遵循的原則是從選擇器的右邊到左邊讀取。換句話說,瀏覽器讀取選擇器的順序是由右到左進行」。比如說:
div.nav > ul li a
上面的實例來說,瀏覽器首先會嘗試在你的HTML標簽中尋找「a」元素,接著在匹配「li和ul」,最後在去匹配「div.nav」。這就是前成所主的「選擇器從右到左的原則」。
選擇器的最後一部分,也就是選擇器的最右邊(在這個例子中就是a[title]部分)部分被稱為「關鍵選擇器」,它將決定你的選擇器的效率如何?是高還是低。
老版本的瀏覽器可以過濾掉不匹配的選擇器,而直接匹配更高效的選擇器。記得David Hyatt在《Writing efficient
CSS for use in the Mozilla
UI》說過:「這個關鍵選擇器可以大大提高選擇器的性能,少檢查一個給定的元素規則,就可以更有效的將樣式匹配給對應的HTML元素。」那麼如何讓關鍵選
擇器更有效,性能化更高呢?其實很簡單,主要把握一點「越具體的關鍵選擇器,其性能越高」
那麼什麼樣類型的選擇器,其性能高?什麼樣的類型的選擇器性能低呢?下面我們就針對兩個問題來展開具體的學習。
CSS選擇器的效率
如果你閱讀了本站的有關於選擇器類型的介紹的話,你對選擇器並不會感到陌生。就算你沒讀過,我想CSS選擇器不會讓我們覺得是新東西,比如我們
常用的基本選擇器「元素標簽選擇器div」、「id選擇器#header」、「類選擇器.class」,或者說我們很少見的偽類選擇器「:focus」以
及更復雜的css3選擇器「:nth-child」等等。
選擇器有一個固有的效率,我們來看Steve Souders給排的一個順序:
id選擇器(#myid)
類選擇器(.myclassname)
標簽選擇器(div,h1,p)
相鄰選擇器(h1+p)
子選擇器(ul > li)
後代選擇器(li a)
通配符選擇器(*)
屬性選擇器(a[rel="external"])
偽類選擇器(a:hover,li:nth-child)
上面九種選擇器的效率是從高到低排下來的,基中ID選擇器的效率是最高,而偽類選擇器的效率則是最底。詳細的介紹大家還可以點擊Writing efficient CSS selectors。
綜合上面的順序,我們清楚的知道,id和類名用於關鍵選擇器上效率是最高的,而CSS3的仿偽類和屬性選擇器,雖然使用方便,但其效率卻是最低的。我們下面一起來看幾個實例的對比:
div #myid
效率要比下面的高:
#myid div
第一種選擇器比第二種選擇器效率高,大家或許會問為什麼?其實根據前面所介紹的我們就不難理解了,因為第一個選擇器的「關鍵選擇器」使用了
「ID選擇器」,而第二個選擇器的「關鍵選擇器」使用的是「標簽選擇器」,對比下來,「ID選擇器」效率高過「標簽選擇器」,所以說第一個選擇器的效率要
高於第二個選擇器。
在類名或ID名前面加上標簽也會致使選擇器效率變低的,比如說:
div
#myid
上面兩個選擇的效率要高於下面的選擇器:
p#mydiv
p.myclassname
來自Mozilla的幾點建議
David在《Use efficient CSS selectors》中介紹了幾種書寫高效率的CSS選擇器的方法,下面我將他們移到這里來讓大家參考:
寫道
1 避免普遍規則
2 不要在ID選擇器前加標簽名或類名
3 不要在類名選擇器前加標簽名
4 盡可能使用具體的類別
5 避免使用後代選擇器
6 標簽分類規則中不應該包含一個子選擇器
7 子選擇器的問題
8 藉助相關繼承關系
9 使用范圍內的樣式表
如果你不夠清楚上面所講的是什麼,你可以點擊這里,他會讓你更容易了解這些規則。
我們應該怎麼做
前面說「ID選擇器」的效率是最高的,那麼今天我們寫樣式,為了提高選擇器的效率,是不是我們要在每一個文檔的HTML元素中都加入ID名呢?
我想這樣的做法是沒有的。對於一個有語義的代碼編寫和如何提高性能,以前他們之間如何的平衡?其實這個選擇器的效率低一點,對於大多數網站來說並不會有太
大的影響,但對於一個大型的網站,產生大量的流量這就會有差別了,也就很值得我們去對他進行優化。那麼我們就很有必要的去了解他們是如何工作,比如說,一
般情況下哪些選擇器的使用效率更高。來看兩個簡單的例子:
#myid
上面的選擇器高於下面的:
p#myid
後者的寫法我發現還是有很多朋友這樣寫,但我不知道你為什麼需要在ID前面加一個標簽?難道你同一個頁面會有多個相同的ID不成?
我們接下來在來看一個實例,用於列表上的,比如說我們製作導航菜單的:
#nav a
高效於:
#nav li a
上面只是介紹了兩個常碰到的實例,在這里說這兩個實例,主要目的是讓你在今後的編寫樣式時,能注意這方面的的細節,從而加快你的代碼效率。
❺ CSS的選擇器能通過標簽里的內容進行選擇么
你是指來這樣的自嗎?
例如
12345678910<input type="text" class="user"><input type="submit" class="btn"><h2 title="hello">hello world</h2><div data="xxx"></div><style>input[type="text"] {......}input[type="submit"] {.......}[title="hello"] {......}div[data="xxx"] {......}</style>
style里的就是CSS屬性選擇器
❻ CSS的選擇器能通過標簽里的內容進行選擇么
你是指這樣的嗎?
例如
<inputtype="text"class="user">
<inputtype="submit"class="btn">
<h2title="hello">helloworld</h2>
<divdata="xxx"></div>
<style>
input[type="text"]{......}
input[type="submit"]{.......}
[title="hello"]{......}
div[data="xxx"]{......}
</style>
style里的就是CSS屬性回選擇答器
❼ css選擇器,選不中想要 代碼如圖
[src*=xxx]使用這個選擇器即可,表示選擇每一個src屬性的值包含子字元串"xxx"的元素
❽ CSS選擇器只選到一個span
你這樣寫呢:
#menu .ullist li a span { background: url(../img/pin-small.png) no-repeat right center;}
還有一種情況,你在span 的中間加個 可能是span 沒有設定高寬 ;內容沒顯示,版你換個瀏權覽器試試(ff ,chrome )裡面看看
❾ css3的選擇器有哪些
css3選擇器如下:
一、通配符選擇器(*)
通配符選擇器是用來選擇所有元素,,也可以選擇某個元素下的所有元素。
二、元素選擇器(E)
元素選擇器,是css選擇器中最常見而且最基本的選擇器。
三、類選擇器(.className)
類選擇器是以一獨立於文檔元素的方式來指定樣式,使用類選擇器之前需要在html元素上定義類名
四、id選擇器(#ID)
ID選擇器和上面說的類選擇器是很相似的,在使用ID選擇器之前也需要先在html文檔中加註ID名稱,這樣在樣式選擇器中才能找到相對應的元素,不同的是ID選擇器是一個頁面中唯一的值,我們在類使用時是在相對應的類名前加上一個「.」號(.className)而id選擇器是在名稱前使用"#"如(#id),
五、後代選擇器(E F)
後代選擇器也被稱作包含選擇器,所起作用就是可以選擇某元素的後代元素,比如說:E
F,前面E為祖先元素,F為後代元素,所表達的意思就是選擇了E元素的所有後代F元素,請注意他們之間需要一個空格隔開。
六、子元素選擇器(E>F)
子元素選擇器只能選擇某元素的子元素,其中E為父元素,而F為子元素,其中E>F所表示的是選擇了E元素下的所有子元素F。這和後代選擇器(E
F)不一樣,在後代選擇器中F是E的後代元素,而子元素選擇器E > F,其中F僅僅是E的子元素而以。
七、相鄰兄弟元素選擇器(E + F)
相鄰兄弟選擇器可以選擇緊接在另一元素後的元素,而且他們具有一個相同的父元素,換句話說,EF兩元素具有一個相同的父元素,而且F元素在E元素後面,而且相鄰,這樣我們就可以使用相鄰兄弟元素選擇器來選擇F元素。
❿ css3有沒有除第一個子元素以外的元素的選擇器
有的,包括:「:not(:first-child)」、「:nth-child(n+2)」兩種方式。
1、:not(:first-child):其中,E:not(s)表示匹配所有不匹配簡單選擇符s的元素E,E:first-child匹配同級兄弟元素中的第一個E元素。
2、:nth-child(n+2):其中nth-child表示第幾個son,n+2表示從第二個開始(即所有的n都是取從0開始的自然數)。
(10)css選擇器過濾廣告擴展閱讀:
css3中相關的選擇器:
1、E:root :匹配文檔的根元素。在HTML(標准通用標記語言下的一個應用)中,根元素永遠是HTML
2、E:nth-child(n):匹配父元素中的第n個子元素E
3、E:nth-last-child(n):匹配父元素中的倒數第n個結構子元素E
4、E:nth-of-type(n):匹配同類型中的第n個同級兄弟元素E
5、E:nth-last-of-type(n):匹配同類型中的倒數第n個同級兄弟元素E
6、E:last-child:匹配父元素中最後一個E元素
7、E:first-of-type:匹配同級兄弟元素中的第一個E元素
8、E:only-child:匹配屬於父元素中唯一子元素的E
9、E:only-of-type:匹配屬於同類型中唯一兄弟元素的E