1. 程式人生 > >用CSS定義每段首行縮排2個字元

用CSS定義每段首行縮排2個字元

        你應該遵循w3c所制定的html/xhtml標準來使用tag和編寫網頁。如果你對此不太瞭解,可以到w3c的網站www.w3.org去找相關資料,或者買一本xhtml的書(注意不要買過時的html的書,儘量選擇外國人寫的)看。  
   
        在你的這個問題裡,你首先要了解的是block元素和inline元素的區別,p、div等屬於block元素,而a、span、br都是inline的元素。text-indent既然是定義與一個段落相關的資訊,即段首縮排,則只作用在block元素上而不是inline元素上。   
    
這樣,如果你寫出的是:  
   
  p   {   text-indent:2em   }  
   
  <p>first   para...</p>  
  <p>second   long   paragraph   ................................................................................................................................................................</p>  
  就能達到效果。  
   
  但是,如果是  
  <p>  
  first   line<br   />  
  second   line<br   />  
  </p>   
    

則不能達到你的預想,因為text-indent是p的樣式,而不是br的樣式。那麼可否為br設定text-indent樣式呢?  
   
        顯然,因為br根本就是一個空元素,表示換行而已,因此設定了text-indent也沒有用,br之內根本就沒有內容,又何談內容的樣式?  
   
        造成這種困惑的原因在於,你沒有從傳統的純文字以/n換行符表示段落結束和開始的習慣中進入標記語言的思維,因此不理解文字段落就應該用p來表示。br僅僅是提供在必要時候強制換行(比如用於表示程式程式碼的換行)的格式標記。