行內元素和區塊級元素的區別

高洛峰
發布: 2017-02-28 10:37:50
原創
2565 人瀏覽過

一、行內元素和區塊級元素的區別

#  1、行內元素不會佔據整行,並在一條直線上排列,都是同一行,水平方向排列;

    塊級元素會佔據一行,垂直方向排列。

  2、 區塊級元素可以包含行內元素和區塊級元素;行內元素不能包含區塊級元素。

  3、 行內元素與區塊級元素屬性的不同,主要是盒子模型屬性上,行內元素設定width無效,height無效(可以設定line-height),margin上下無效,padding上下無效。

二、行內元素與區塊級元素的相互轉換

  行內元素轉化為區塊元素: display:block; 

  區塊元素轉換為行內元素: display:inline; 

三、問題延伸

  問題描述:為何img、input等行內元素可以設定寬、高?

  詳細解答:

   元素是文件結構的基礎,在CSS中,每個元素產生了一個包含了元素內容的方塊(box,也譯為「盒子」)。但不同的元素顯示的方式會有所不同,例如

   就不同,而

也不一樣。在文件類型定義(DTD)中對不同的元素規定了不同的類型,這也是DTD對文件之所以重要的原因之一。

 

   1. 替換和不可替換元素

  從元素本身的特徵來講,可以分為替換和不可替換元素。

    a) 取代元素

    替換元素就是瀏覽器根據元素的標籤和屬性,來決定元素的具體顯示內容。

    例如瀏覽器會根據標籤的src屬性的值來讀取圖片資訊並顯示出來,而如果查看(X)HTML程式碼,則看不到圖片的實際內容;又例如根據標籤的type屬性來

    決定要顯示輸入框,還是單選按鈕等。

    (X)HTML中的