本文主要講的是css3選擇器,以及和css3選擇器語法結(jié)構(gòu)相關(guān)的知識,如果覺得本文對您有所幫助,不要忘了將本文分享給朋友。
css3的選擇器有哪些?
css3選擇器如下:
一、通配符選擇器(*)
通配符選擇器是用來選擇所有元素,,也可以選擇某個元素下的所有元素。
二、元素選擇器(E)
元素選擇器,是css選擇器中最常見而且最基本的選擇器。
三、類選擇器(.className)
類選擇器是以一獨立于文檔元素的方式來指定樣式,使用類選擇器之前需要在html元素上定義類名
四、id選擇器(#ID)
ID選擇器和上面說的類選擇器是很相似的,在使用ID選擇器之前也需要先在html文檔中加注ID名稱,這樣在樣式選擇器中才能找到相對應(yīng)的元素,不同的是ID選擇器是一個頁面中唯一的值,我們在類使用時是在相對應(yīng)的類名前加上一個“.”號(.className)而id選擇器是在名稱前使用"#"如(#id),
五、后代選擇器(E F)
后代選擇器也被稱作包含選擇器,所起作用就是可以選擇某元素的后代元素,比如說:E?
F,前面E為祖先元素,F(xiàn)為后代元素,所表達的意思就是選擇了E元素的所有后代F元素,請注意他們之間需要一個空格隔開。
六、子元素選擇器(Egt;F)
子元素選擇器只能選擇某元素的子元素,其中E為父元素,而F為子元素,其中Egt;F所表示的是選擇了E元素下的所有子元素F。這和后代選擇器(E?
F)不一樣,在后代選擇器中F是E的后代元素,而子元素選擇器E gt; F,其中F僅僅是E的子元素而以。
七、相鄰兄弟元素選擇器(E + F)
相鄰兄弟選擇器可以選擇緊接在另一元素后的元素,而且他們具有一個相同的父元素,換句話說,EF兩元素具有一個相同的父元素,而且F元素在E元素后面,而且相鄰,這樣我們就可以使用相鄰兄弟元素選擇器來選擇F元素。
CSS3新增的哪些選擇器和常見的屬性是哪些?
一、新增的選擇器
CSS3新增的屬性選擇器 {除ie6外的大部分瀏覽器支持)
1 ? ?E[att^=”val”] ? ?屬性att的值以”val”開頭的元素 ? ?div[id^=”nav”] { background:#ff0; }?
2 ? ?E[att$=”val”] ? ?屬性att的值以”val”結(jié)尾的元素 ? ?? ?
3 ? ?E[att*=”val”] ? ?屬性att的值包含”val”字符串的元素 ? ?? ?
結(jié)構(gòu)偽類選擇器(過濾選擇器)
(注:FireFox 1.5/2.0/3.0支持E:root,F(xiàn)ireFox 3.0支持E:last-child、E:only-child、E:empty。
由于IE6/7/8不支持,沒辦法,選擇合適的場合用吧。)
4 ? ?E:root ? ?匹配文檔的根元素,對于HTML文檔,就是HTML元素 ? ?? ?
5 ? ?E:nth-child(n) ? ?匹配其父元素的第n個子元素,第一個編號為1 ? ?p:nth-child(3) { color:#f00; } ?
6 ? ?E:nth-last-child(n) ? ?匹配其父元素的倒數(shù)第n個子元素,第一個編號為1 ? ?p:last-child { background:#ff0; } ?
7 ? ?E:nth-of-type(n) ? ?與:nth-child()作用類似,但是僅匹配使用同種標簽的元素 ? ?p:nth-of-type(2){color:red;}選擇父元素的第n個子元素p ?
8 ? ?E:nth-last-of-type(n) ? ?與:nth-last-child() 作用類似,但是僅匹配使用同種標簽的元素 ? ?? ?
9 ? ?E:last-child ? ?匹配父元素的最后一個子元素,等同于:nth-last-child(1) ? ?? ?
10 ? ?E:first-of-type ? ?匹配父元素下使用同種標簽的第一個子元素,等同于:nth-of-type(1) ? ?? ?
11 ? ?E:last-of-type ? ?匹配父元素下使用同種標簽的最后一個子元素,等同于:nth-last-of-type(1) ? ?? ?
12 ? ?E:only-child ? ?匹配父元素下僅有的一個子元素,等同于:first-child:last-child或 :nth-child(1):nth-last-child(1) ? ?p:only-child { background:#ff0; } ?
13 ? ?E:only-of-type ? ?匹配父元素下使用同種標簽的唯一一個子元素,等同于:first-of-type:last-of-type或 :nth-of-type(1):nth-last-of-type(1) ? ?? ?
14 ? ?E:empty ? ?匹配一個不包含任何子元素的元素,注意,文本節(jié)點也被看作子元素 ? ?p:empty { background:#ff0; } ?
與用戶界面(UI)有關(guān)的偽類(ie6 7 8不支持)? ??
15 ? ?E:enabled ? ?匹配表單中激活的元素 ? ?? ?
16 ? ?E:disabled ? ?匹配表單中禁用的元素 ? ?input[type=”text”]:disabled { background:#ddd; } ?
17 ? ?E:checked ? ?匹配表單中被選中的radio(單選框)或checkbox(復(fù)選框)元素 ? ?? ?
18 ? ?E::selection ? ?匹配用戶當前選中的元素 ? ?? ?
級元素通用選擇器
ie6不支持?
19 ? ?E ~ F ? ?匹配任何在E元素之后的同級F元素 ? ?p ~ ul { background:#ff0; } ?
反選偽類
(ie6 7 8 firefox3.0以下 Opera9.0不支持) ?
20 ? ?E:not(s) ? ?匹配不符合當前選擇器的任何元素 ? ?:not(p) { border:1px solid #ccc; } ?
:target 偽類
(ie6 7 8不支持) ?
21 ? ?E:target ? ?匹配文檔中特定”id”點擊后的效果 ? ?? ?
?二、css3新增屬性
一. box-shadow(陰影效果)
使用:
box-shadow: 20px 10px 0 #000;
-moz-box-shadow: 20px 10px 0 #000;
-webkit-box-shadow: 20px 10px 0 #000;
支持:
? ? FF3.5, Safari 4, Chrome 3
二. border-colors(為邊框設(shè)置多種顏色)
使用:
border: 10px solid #000;
-moz-border-bottom-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-top-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-left-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-right-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
說明:
? ? 顏色值數(shù)量不固定, 且FF的私有寫法不支持縮寫: -moz-border-colors: #333 #444 #555;
支持:
? ?FF3+
三. boder-image(圖片邊框)
使用:
? ??-moz-border-image: url(exam.png) 20 20 20 20 repeat;
? ? -webkit-border-image: url(exam.png) 20 20 20 20 repeat;
說明:
(1). 20 20 20 20 — 邊框的寬度, 分別對應(yīng)top, right, bottom, left邊框, 改變寬度可以實現(xiàn)不同的效果;
(2). 邊框圖片效果(目前僅實現(xiàn)了兩種):
? ?repeat — 邊框圖片會平鋪, 類似于背景重復(fù);
? ?stretch — 邊框圖片會以拉伸的方式來鋪滿整個邊框;
(3). 必須將元素的邊框厚度設(shè)置為非0非auto值.
支持:
? ??FF 3.5,?Safari 4, Chrome 3
四. text-shadow(文本陰影)
使用:
? ??text-shadow:?[顏色水平偏移縱向偏移模糊半徑] ||?[水平偏移縱向偏移模糊半徑顏色];
說明:
(1)?顏色和模糊半徑是可選的, 當顏色未指定時, 將使用文本顏色; 當模糊半徑未指定時, 半徑值為0;
(2)?shadow可以是逗號分隔的列表, 如:
??text-shadow: 2px 2px 2px #ccc, 3px 3px 3px #ddd;
(3)?陰影效果會按照shadow list中指定的順序應(yīng)用到元素上;
(4)?這些陰影效果有可能相互重疊, 但不會疊加文本本身;
(5)?陰影可能會跑到容器的邊界之外, 但不會影響容器的大小.
支持:
? ??FF 3.5, Opera 10, Safari 4, Chrome 3
五.??text-overflow(文本截斷)
使用:
? ??text-overflow: inherit | ellipsis | clip ;
? ? -o-text-overflow: inherit | ellipsis | clip;
說明:
(1) 還有一個屬性ellipsis-word, 但各瀏覽器均不支持.
支持:
? ? IE6+, Safari4, Chrome3, Opera10
六. word-wrap(自動換行)
使用:
? ??word-wrap: normal | break-word;
支持:
? ??IE6+, FF 3.5, Safari 4, Chrome 3
七. border-radius(圓角邊框)
使用:
? ?? -moz-border-radius: 5px;
-webkit-border-radius: 5px;
支持:
FF 3+, Safari 4 , Chrome 3
八. ? opacity(不透明度)
使用:
? ? opacity: 0.5;
? ? filter: alpha(opacity=50); /* for IE6, 7 */
? ? -ms-filter(opacity=50); /* for IE8 */
支持:
? ? all
九. box-sizing(控制盒模型的組成模式)
使用:
? ? box-sizing: content-box | border-box; // for opera
? ? -moz-box-sizing:?content-box | border-box;
? ? -webkit-box-sizing:?content-box | border-box;
說明:
? ?1. content-box:
? ?使用此值時,?盒模型的組成模式是, 元素寬度 = content + padding + border;
? ?2. border-box:
? ?使用此值時,?盒模型的組成模式是, 元素寬度 = content(即使設(shè)置了padding和border, 元素的寬度
? ?也不會變).
支持:
? ? FF3+, Opera 10, Safari 4, Chrome 3
十. resize(元素縮放)
使用:
? ? resize:? none | both | horizontal | vertical;
說明:
? ? 1. 必須將元素的overflow屬性設(shè)置為auto或hidden, 該屬性才能起作用(overflow設(shè)置為visible時, 無效);
? ? 2. 屬性值說明:
? ? (1). none — 禁用縮放;
? ? (2). both — 可同時縮放寬度和高度;
? ? (3). horizontal — 僅能縮放寬度;
? ? (4). vertical — 僅能縮放高度;
支持:
? ? safari 4, chrome 3
十一. outline(外邊框)
使用:
? ? outline: 邊框厚度 邊框樣式 邊框顏色;
? ? outline-offset: 偏移值;
說明:
? ? outline-offset需要獨立寫, 簡寫是無效的.
支持:
? ? FF3+, safari 4, chrome 3, opera 10
十二. background-size(指定背景圖片的尺寸)
使用:
? ? -o-background-size: [length | percentage] {1, 2};
? ? -webkit-background-size:?[length | percentage] {1, 2};
例如:
? ?-o-background-size: 50px 60px;
? ? -webkit-background-size:?50px 60px;
? ? 這會將背景圖片的寬設(shè)置了50px, 高60px.
支持:
? ?? safari 4, chrome 3, opera 10
十三. background-origin(指定背景圖片從哪里開始顯示)
使用:
? ? -webkit-background-origin: border | padding | content;
? ? -moz-background-origin: border | padding | content;
說明:
? ? (1) border —?從border區(qū)域開始顯示背景;
? ? (2) padding —?從padding區(qū)域開始顯示背景;
? ? (3) content —?從content區(qū)域開始顯示背景;
注意:
? ? 1. 必須先指定background屬性, 然后才能指定該屬性, 如果該屬性出現(xiàn)在background屬性之前,
會無效.
支持:
? ?? safari 4, chrome 3, FF 3+ ?? ?? ?
十四. background-clip(指定背景圖片從什么位置開始裁切)
使用:
? ? -webkit-background-origin: border-box | padding-box | content-box | no-clip;
說明:
? ? (1)?border-box?—?從border區(qū)域向外裁剪背景;
? ? (2)?padding-box?—?從padding區(qū)域向外裁剪背景;
? ? (3)?content-box?—?從content區(qū)域向外裁剪背景;
? ? (4) no-clip — 不裁切背景.
注意:
? ? 1. 必須先指定background屬性, 然后才能指定該屬性, 如果該屬性出現(xiàn)在background屬性之前,
會無效.
支持:
? ?? safari 4, chrome 3
十五. ?background(為一個元素指定多個背景)
使用:
? ? background:? [background-image] | [background-origin] | [background-clip] | [background-repeat] | [background-size] | [background-position]
例子:
? ? background: url(bg1.png) no-repeat left top, url(bg2.png) no-repeat right bottom;
支持:
? ?? safari 4, chrome 3
十六. hsl(通過色調(diào), 飽和度, 亮度來指定顏色值)
使用:
? ? hsl: (?length?||?percentage?||?percentage);
說明:
? ? (1) length: h(色調(diào)), ?0(或360)表示紅色, 120表示綠色, 240表示藍色;
? ? (2) percentage: s(飽和度), ?取值為0%到100%之間的值;
? ? (3) percentage: l(亮度), ?取值為0%到100%之間的值;
例子:
? ? background: hsl(240, 50%, 100%);
? ? color: hsl(100, 80, 100%);
支持:
? ?? safari 4, chrome 3, FF3, opera 10
十七. hsla(在hsl的基礎(chǔ)上上增加了一個透明度設(shè)置)
使用:
? ? hsla: (?length??||??percentage??||??percentage || opacity);
說明:
? ? (1) opacity: a(透明度), 取值在0到1之間;
例子:
? ? background: hsl(240, 50%, 100%, 0.5);
? ??color: hsl(240, 50%, 100%, 0.5);
支持:
? ?? safari 4, chrome 3, FF3, opera 10
十八. rgba(基于r,g,b三個顏色通道來設(shè)置顏色值, 通過a來設(shè)置透明度)
使用:
? ? rgba: (r, g, b, opacity);
說明:
? ? (1) r: 紅色,?正整數(shù) | 百分數(shù);
? ? (2) g: 綠色,?正整數(shù) | 百分數(shù);
? ? (3) b: 藍色,?正整數(shù) | 百分數(shù);
? ? (4) a: 透明度, 取值在0到1之間;
? ? (5) 正整數(shù)在0到255之間, 百分數(shù)在0%到100%之間.
例子:
? ? rgba: (100%, 244, 0, 0.5);
支持:
? ?? safari 4, chrome 3, FF3, opera 10
十九、?transition(a標簽hover漸隱效果)
a:hover{transition: color 0.15s linear 0s, background-color 0.3s linear 0s;}
-webkit-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-moz-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-o-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-ms-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
CSS3 選擇器
css3中,追加了三個屬性選擇器分別為:
結(jié)構(gòu)性偽類選擇器由兩部分構(gòu)成,一是偽類選擇器,一是偽元素選擇器。
偽類選擇器 ,要注意命名不要與系統(tǒng)定義好的選擇器重名,例如link、hover
偽元素選擇器 中包含 first-line、first-letter、before、after。
當root和body起沖突時,body就對內(nèi)容區(qū)域生效,在內(nèi)容區(qū)外則是root生效。
格式:not(selector)
1. first-child對一個父元素中的 第一個 子元素進行樣式的指定
2. last-child對一個父元素中的 最后一個 子元素進行樣式的指定
3. nth-child(positon)對一個父元素中的 指定序號 的子元素進行樣式的指定
4. nth-last-child 對一個父元素中的 指定倒數(shù)序號 的子元素進行樣式的指定
2)使用nth-of-type(odd)和nth-of-type(even)
1)使用nth-child
2)使用nth-child(an+b),a表示每次循環(huán)中,包括幾種樣式,b表示指定的樣式在循環(huán)中所處的位置。
only-child選擇器,在元素只有一個子元素時,可以代替使用 nth-child(1)/nth-last-child(1) 。
在css3選擇器中,除了結(jié)構(gòu)性偽類選擇器外,還有一種UI元素狀態(tài)選擇器——只有當元素處于某種狀態(tài)下才起作用,在默認狀態(tài)下不起作用。
通過js改變輸入框的可輸入和不可輸入狀態(tài),通過css樣式改變輸入框可輸入和不可輸入狀態(tài)時的背景顏色。
用來位于同一個父元素之下的,給與一個子元素平級的另一個子元素設(shè)定樣式
css3有哪些選擇器?
css3選擇器如下:
一、通配符選擇器(*)
通配符選擇器是用來選擇所有元素,,也可以選擇某個元素下的所有元素。
二、元素選擇器(E)
元素選擇器,是css選擇器中最常見而且最基本的選擇器。
三、類選擇器(.className)
類選擇器是以一獨立于文檔元素的方式來指定樣式,使用類選擇器之前需要在html元素上定義類名
四、id選擇器(#ID)
ID選擇器和上面說的類選擇器是很相似的,在使用ID選擇器之前也需要先在html文檔中加注ID名稱,這樣在樣式選擇器中才能找到相對應(yīng)的元素,不同的是ID選擇器是一個頁面中唯一的值,我們在類使用時是在相對應(yīng)的類名前加上一個“.”號(.className)而id選擇器是在名稱前使用”#”如(#id),
五、后代選擇器(E F)
后代選擇器也被稱作包含選擇器,所起作用就是可以選擇某元素的后代元素,比如說:E
F,前面E為祖先元素,F(xiàn)為后代元素,所表達的意思就是選擇了E元素的所有后代F元素,請注意他們之間需要一個空格隔開。
六、子元素選擇器(EF)
子元素選擇器只能選擇某元素的子元素,其中E為父元素,而F為子元素,其中EF所表示的是選擇了E元素下的所有子元素F。這和后代選擇器(E
F)不一樣,在后代選擇器中F是E的后代元素,而子元素選擇器EF,其中F僅僅是E的子元素而以。
七、相鄰兄弟元素選擇器(E + F)
相鄰兄弟選擇器可以選擇緊接在另一元素后的元素,而且他們具有一個相同的父元素,換句話說,EF兩元素具有一個相同的父元素,而且F元素在E元素后面,而且相鄰,這樣我們就可以使用相鄰兄弟元素選擇器來選擇F元素。
css3 新增選擇器有哪些?
一、css3之前的選擇器
ID選擇器,#
類選擇器,.
包含選擇器(E F)
偽類選擇器(:link,visited,hover,active,focus,first-child)
偽元素選擇器(::first-line,first-letter,before,after)
通配選擇器(.)
屬性選擇器(foo[name=’martin’])
子包含選擇器(EF)
相鄰兄弟選擇器(E+F)
二、css3新增選擇器
新增屬性選擇器:
E[foo^=’bar’] 匹配E元素,該元素包含foo屬性,且foo屬性值以bar開頭
E[foo$=’bar’] 匹配E元素,該元素包含foo屬性,且foo屬性值以bar結(jié)尾
E[foo*=’bar’] 匹配E元素,該元素包含foo屬性,且foo屬性值包含bar字符串
新增結(jié)構(gòu)偽類選擇器:
E:root 匹配文檔所在的根元素
E:nth-child(n) 匹配E所在父元素第n個匹配E的元素,非E的子元素也參與排序,若第n個子元素不是E元素,則該語句沒有效果(注意這里的n從1開始)
E:nth-last-child(n) 匹配E所在父元素倒數(shù)第n個匹配E的元素
E:nth-of-type(n) 匹配E所在父元素第n個匹配E的元素,非E的子元素不參與排序(n同樣是從1開始)注意區(qū)別nth-child(n)
E:last-child
E:first-of-type
E:last-of-type
E:only-child
E:only-of-type
E:empty
另外,使用前要考慮瀏覽器版本,新增css3選擇器存在兼容性問題。平時多多練習(xí),多動手。
CSS3中選擇器有哪些語法
ss3選擇器如下:
一、通配符選擇器(*)
通配符選擇器是用來選擇所有元素,,也可以選擇某個元素下的所有元素。
二、元素選擇器(E)
元素選擇器,是css選擇器中最常見而且最基本的選擇器。
三、類選擇器(.className)
類選擇器是以一獨立于文檔元素的方式來指定樣式,使用類選擇器之前需要在html元素上定義類名
四、id選擇器(#ID)
ID選擇器和上面說的類選擇器是很相似的,在使用ID選擇器之前也需要先在html文檔中加注ID名稱,這樣在樣式選擇器中才能找到相對應(yīng)的元素,不同的是ID選擇器是一個頁面中唯一的值,我們在類使用時是在相對應(yīng)的類名前加上一個“.”號(.className)而id選擇器是在名稱前使用”#”如(#id),
五、后代選擇器(E F)
后代選擇器也被稱作包含選擇器,所起作用就是可以選擇某元素的后代元素,比如說:E
F,前面E為祖先元素,F(xiàn)為后代元素,所表達的意思就是選擇了E元素的所有后代F元素,請注意他們之間需要一個空格隔開。
六、子元素選擇器(EF)
子元素選擇器只能選擇某元素的子元素,其中E為父元素,而F為子元素,其中EF所表示的是選擇了E元素下的所有子元素F。這和后代選擇器(E
F)不一樣,在后代選擇器中F是E的后代元素,而子元素選擇器EF,其中F僅僅是E的子元素而以。
七、相鄰兄弟元素選擇器(E + F)
相鄰兄弟選擇器可以選擇緊接在另一元素后的元素,而且他們具有一個相同的父元素,換句話說,EF兩元素具有一個相同的父元素,而且F元素在E元素后面,而且相鄰,這樣我們就可以使用相鄰兄弟元素選擇器來選擇F元素。
關(guān)于css3選擇器和css3選擇器語法結(jié)構(gòu)的相關(guān)介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。