相鄰同胞選擇符
利用“相鄰選擇符”,可以根據(jù)一個元素定位到與之相鄰的另一個元素,并應(yīng)用樣式。說白了,“相鄰選擇符”就是只對“與自己平行關(guān)系的”、“相鄰的”、“在我下面的”“哥們元素”起作用。下面的例子,將更有助于你的理解(注意只有處于h1后面的p3,字體顏色發(fā)生了變化)。
<!DOCTYPE html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "<html xmlns="
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="Keywords" content="簡單的XHTML頁面" /> <meta name="Description" content="這是一個簡單的XHTML頁面" /> <title>簡單的XHTML頁面</title> <style type="text/css"> h1 + p {color:blue} </style> </head> <body>
<p id="p1">這里是我哥們甲的哥們,“我”和它不太熟。</p> <p id="p2">這里是我哥們甲,它在我前面面,“混”的比我好,所以我就不管它了。</p> <h1>這里是“我”</h1> <p id="p3">這里是我哥們乙,它在我后面,“混”的還不如我,所以我要照顧它一下。</p> <p id="p4">這里是我哥們乙的哥們,“我”和它不太熟。</p>
</div>
</body>
</html>
下面是分別在IE6,IE7,F(xiàn)ireFox(版本2.0.0,12)和Oepra(版本9.25)的顯示效果截圖(IE6和IE7共存的方法,可以參考文章《IE6和IE7共存方法(別人是別人的,我是我的)》)。
下面是關(guān)于“子選擇符”和“后代選擇符”的一些補充資料
很多朋友把分不清“子選擇符”和“后代選擇符”的區(qū)別。其實它們的差別還是蠻大的!昂蟠x擇符”IE6,甚至更低IE版本,就已經(jīng)支持了。也許你已經(jīng)被這些“拗口”、“深奧”的名詞搞迷糊了。到底什么“后代選擇符”呢?其實大家都用過,看看下面的例子就明白了。 現(xiàn)在無論是FireFox還是IE7,對于“子選擇符”的支持還都存在一定的問題。
<!DOCTYPE html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "<html xmlns="<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="Keywords" content="YES!B/S!,web標準,楊正祎,博客園,實例代碼" /> <meta name="Description" content="這是一個簡單YES!B/S!文章示例頁面,來自楊正祎的博客,http://justinyoung.cnblogs.com/" /> <title>YES!B/S!文章示例頁面</title> <style type="text/css"> /*后代選擇符*/ #div1 p{ color:red; } /*子選擇符*/ #div1>p{ font-size:150%; } </style> </head> <body>
<div id="div1"> <p id="p1">我是div1的兒子1 <p id="p1_1">我是div1的孫子</p> </p> <p id="p2">我是div1的兒子2</p> </div>
</body> </html>
示例中,"p1"和"p2"包含在“div1”內(nèi),那么"p1"和"p2"就是“div1”的兒子,是后代,而“p1_1”包含在“p1”中,那么“p1_1”是“p1”的兒子,是后代。而“p1_1”也包含在“div1”中,則“p1_1”是“div1”的孫子,也是后代。使用“#div1 p{color:red;}”(后代選擇器)會將div1下面的所有段落的字體顏色都設(shè)置為了紅色。無論是孩子還是孫子,都要聽話。“只要是我的后代,就得聽我的話!”——這就是“后代選擇符”。
而“子選擇符”則不會那么霸道,它只管它的“兒子”,不會去管“孫子”、“重孫子”、“重重孫子”……
出處:
責任編輯:bluehearts
上一頁 更豐富的CSS選擇符 [1] 下一頁 更豐富的CSS選擇符 [3]
◎進入論壇網(wǎng)頁制作、WEB標準化版塊參加討論,我還想發(fā)表評論。
|