css3是css(層疊樣式表)技術的公升級版本,於2023年開始制訂,2023年5月23日w3c完成了css3的工作草案,主要包括盒子模型、列表模組、超連結方式、語言模組、背景和邊框、文字特效、多欄布局等模。
要使用css對html頁面中的元素實現一對一,一對多或者多對一的控制,這就需要用到css選擇器。
html頁面中的元素就是通過css選擇器進行控制的。
id選擇器(#id名)
類選擇器(.class名)
包含選擇器(e f)
偽類選擇器(:link,visited,hover,active,focus,first-child)
偽元素選擇器(::first-line,first-letter,before,after)
通配選擇器(*)
屬性選擇器(foo[name=『martin』])
子包含選擇器(e>f)
相鄰兄弟選擇器(e+f)
新增屬性選擇器:
1.[foo^=『bar』] 匹配e元素,該元素包含foo屬性,且foo屬性值以bar開頭
/* 匹配屬性值以指定開頭的每個元素 */
img[
class
^='a'
]
2.[foo$=『bar』] 匹配e元素,該元素包含foo屬性,且foo屬性值以bar結尾
/* 匹配屬性值以指定結尾的每個元素 */
img[
class$=
'a']
3.[foo*=『bar』] 匹配e元素,該元素包含foo屬性,且foo屬性值包含bar字串
/* 匹配屬性值中包含指定值的每個元素 */
img[
class
*="img"
]
新增結構偽類選擇器:
root 匹配文件所在的根元素
html:root .test
nth-child(n) 匹配e所在父元素第n個匹配e的元素,非e的子元素也參與排序,若第n個子元素不是e元素,則該語句沒有效果(注意這裡的n從1開始)
/* 匹配屬於其父元素中第n個子元素 子元素相對整潔(沒有其他的標籤亂入)*/
/* 所有子元素排序 */
.listb li:nth-
child(2
)
3.nth-last-child(n) 匹配e所在父元素倒數第n個匹配e的元素
/*匹配倒數第乙個子元素*/
.listb li:nth-last-
child(1
)
4.nth-of-type(n) 匹配e所在父元素第n個匹配e的元素,非e的子元素不參與排序(n同樣是從1開始)注意區別nth-child(n)
.listb li:nth-of-
type(2
)
5.last-child
/* 匹配屬於父元素中的最後乙個 */
.lista li:last-child
6.first-of-type
/* 匹配屬於父元素中的第乙個 */
.lista h1:first-child
7.last-of-type
/* 找到ul下面的最後乙個子元素 */
.lista h1:last-
of-type
8.only-child
/* 匹配屬於其父元素中僅有的乙個子元素 */
ul li:only-child
9.only-of-type
/*匹配父元素的所有子元素中唯一的那個子元素*/
p:only-
of-type
10.empty
/* 匹配沒有子元素的元素,也不能包括文字元素 */
ul:empty
ps:如何選擇選擇器要看在專案實戰中的情況,以上只是參考 CSS3 新增選擇器
新增選擇器 用法描述 element1 element2 p u選擇在同乙個父級元素下的p後面的所有的ul 選擇其 src 屬性值以 https 開頭的每個a元素 attribute value a src pdf 選擇其 src 屬性以 pdf 結尾的所有a元素 attribute value a...
css3新增選擇器
1.屬性選擇器 1 e att 元素 屬性 選擇具有att屬性的e元素,需要選擇有某個屬性的元素,而不論是行為是什麼,可以使用簡單的屬性選擇器 注 可以根據多個屬性進行選擇,只需要將屬性選擇器連線即可。2 e att val 元素 屬性 屬性值 選擇具有att屬性且屬性值為val的e元素,進一步縮小...
css3新增選擇器
屬性選擇器 1.dom attr 帶有attr的屬性會被選擇 2.dom attr value 帶有attr的屬性,並且值為value的元素會被選擇 3.dom attr value 帶有attr的屬性,並且值當中只要包含完整的value單詞,就會被選擇 4.dom attr value 帶有att...