CSS 2.1 快速導覽 - 擬類別選取器 :first-child

:first-child 是一種擬類別選取器 (pseudo-class selector) ,作用在第一個子代 (child) 元素 (element) 上面。



舉例如下
div > p:first-child { 
    text-indent: 1em; 
} 

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:demo29.css
    功能:示範 CSS 2.1 樣式表的使用 
    作者:張凱慶
    時間:西元 2011 年 7 月 */


我們以下面的 HTML 文件載入
<title>網頁標題</title>
<link rel="stylesheet" type="text/css" 
      href="demo29.css">
</head>
<body>
<div>
<p>You ever have that feeling where you're not sure if 
you're awake or still dreaming?</p>
<p>A prison for your mind.</p>
<p>Free your mind.</p>
<p>Believe the unbelievable.</p>
<p class="demo">There is no spoon.</p>
<p>I can only show you the door, you have to walk 
through it.</p>
<p>Choice. The problem is choice.</p>
<p>Then tomorrow we may all be dead, but how would that 
be different from any other day?</p>
<p>I have dreamed a dream, but now that dream has gone 
from me.</p>
<p>Choice is an illusion, created between those with 
power, and those without.</p>
<p>Because I choose to.</p>
<p>Everything that has a beginning has an end.</p>
</div>
</body>
</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:demo29.html
     功能:示範 CSS 2.1 樣式表的使用 
     作者:張凱慶
     時間:西元 2011 年 7 月 -->


瀏覽器 (broswer) 開啟如下



原本 div > p 就是選取 <div> 的 <p> 子代元素,加上 :first-child 就是只選取第一個子代,因此上例 <div> 的第一個 <p> 才具有縮排效果。


也可以不指定前代元素,這樣每一個元素的第一個子代都會具有相同的樣式,例如
a:first-child {
    color:red;
}
 
/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:demo30.css
    功能:示範 CSS 2.1 樣式表的使用 
    作者:張凱慶
    時間:西元 2011 年 7 月 */

這與
* > a:first-child {
    color:red;
}
是相同的樣式規則。


我們以下面的 HTML 文件載入
<html>
<head>
<title>網頁標題</title>
<link rel="stylesheet" type="text/css" 
      href="demo30.css">
</head>
<body>
<div>
<a href="http://www.google.com.tw/">
http://www.google.com.tw/</a>
<a href="http://tw.yahoo.com/">
http://tw.yahoo.com/</a>
</div>
<blockquote>
<a href="http://zh-tw.facebook.com/">
http://zh-tw.facebook.com/</a>
<a href="http://pydoing.blogspot.com/">
http://pydoing.blogspot.com/</a>
</blockquote>
<p>
<a href="http://www.pchome.com.tw/">
http://www.pchome.com.tw/</a>
<a href="http://www.yam.com/">
http://www.yam.com/</a>
</p>
<pre>
<a href="http://en.wikipedia.org/wiki/Main_Page">
http://en.wikipedia.org/wiki/Main_Page</a>
<a href="http://www.apple.com/tw/">
http://www.apple.com/tw/</a>
</pre>
</body>
</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:demo30.html
     功能:示範 CSS 2.1 樣式表的使用 
     作者:張凱慶
     時間:西元 2011 年 7 月 -->


結果如下



中英文術語對照
類別選取器pseudo-class selector
子代child
元素element
瀏覽器broswer


您可以繼續參考

基本概念
單位
選取器
@import 規則
階層
元素呈現方式 display


相關目錄
CSS 2.1 快速導覽
HTML, CSS 教材
首頁


參考資料

http://www.w3.org/TR/CSS21/selector.html
https://developer.mozilla.org/en/CSS/Getting_Started/Selectors

沒有留言: