CSS 組合選擇符

CSS 組合選擇符

CSS 組合選擇子

組合選擇子說明了兩個選擇器直接的關係。    

CSS組合選擇子包含各種簡單選擇子的組合方式。

在CSS3 中包含了四種組合方式:

後代選取器(以空格分隔)

子元素選擇器(以大於號分隔)

相鄰兄弟選擇器(以加號分隔)

普通兄弟選擇器(以破折號分隔)

後代選取器

後代選取器符合所有值得元素的後代元素。

以下實例選取所有<p> 元素插入到<div> 元素中:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<style>
div p
{
background-color:#00ff00;
}
</style>
</head>
<body>
<div>
<p>朝辞白帝彩云间</p>
<p>千里江陵一日还</p>
</div>
<p>两岸猿声啼不住</p>
<p>轻舟已过万重山</p>
</body>
</html>

子元素選擇器

與後代選擇器相比,子元素選擇器(Child selectors)只能選擇作為某元素子元素的元素。

以下實例選擇了<div>元素中所有直接子元素<p> :

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<style>
div>p
{
    background-color:blue;
}
</style>
</head>
<body>
<h1>静夜思</h1>
<div>
<h2>床前明月光</h2>
<p>疑是地上霜</p>
</div>
<div>
<span><p>举头望明月</p></span>
<p>低头思故乡</p>
</div>
</body>
</html>

相鄰兄弟選擇器

相鄰兄弟選擇器(Adjacent sibling selector)可選擇緊接在另一元素後的元素,且二者有相同父元素。

如果需要選擇緊接在另一個元素後的元素,而且二者有相同的父元素,可以使用相鄰兄弟選擇器(Adjacent sibling selector)。

以下實例選取了所有位於<div> 元素後的第一個<p> 元素:

<html>
<head>
<meta charset="utf-8">  
<style>
div+p+p
{
background-color:yellow;
}
div+p
{
background-color:red;
}
</style>
</head>
<body>
<h1>清明</h1>
<div>
<h2>清明时节雨纷纷</h2>
<p>路上行人欲断魂</p>
</div>
<p>借问酒家何处有</p>
<p>牧童遥指杏花村</p>
</body>
</html>

普通相鄰兄弟選擇器

普通兄弟選擇器選取所有指定元素的相鄰兄弟元素。

以下實例選取了所有 <div> 元素的所有相鄰兄弟元素 <p> : 

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<style>
div~p
{
background-color:yellow;
}
</style>
</head>
<body>
<div>
<p>画</p>
</div>
<div>
<p>远看山有色</p>
<p>近听水无声</p>
</div>
<p>春去花还在</p>
<p>人来鸟不惊</p>
</body>
</html>

相鄰是指下一個,和上一個沒關係。


繼續學習
||
<html> <head> <meta charset="utf-8"> <style> div+p+p { background-color:yellow; } div+p { background-color:red; } </style> </head> <body> <h1>清明</h1> <div> <h2>清明时节雨纷纷</h2> <p>路上行人欲断魂</p> </div> <p>借问酒家何处有</p> <p>牧童遥指杏花村</p> </body> </html>
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!