行內元素和塊級元素

2021-09-01 22:10:55 字數 1356 閱讀 7085

1.1.1 

定義:

1.1.2 

最常用的屬性值:

block元素的特點:

總是另起一行開始;

寬度預設是它所在容器的100%,除非設定乙個寬度。

高度,行高以及頂、底邊距都可控制;

inline元素的特點:

和其它元素都在一行上;

寬度就是它所容納的文字或的寬度,不可改變。

高度,行高以及頂、底邊距不可改變

,左右(內、外)

邊距和邊框

,可以改變

; 注意

:元素範圍是增大了,但是對元素周圍的內容是沒影響的

inline

-block

元素的特點:

將物件呈遞為內聯物件,但是物件的內容作為塊

物件呈遞。旁邊的內聯物件會被呈遞在同一行內。

注意:對於inline-block屬性,ie6/7只支援本身為inline的元素。

驗證**請參見附件:displaydemo.zip

1.1.3 

inline-block

瀏覽器相容解決方案:

將物件呈遞為內聯物件,但是物件的內容作為塊物件呈遞。旁邊的內聯物件會被呈遞在同一行內,允許空格。(準確地說,應用此特性的元素呈現為內聯物件,周圍元素保持在同一行,但可以設定寬度和高度地塊元素的屬性)

並不是所有瀏覽器都支援此屬性,目前支援的瀏覽器有:opera、safari在ie中對內聯元素使用display:inline-block,ie是不識別的,但使用display:inline-block在ie下會觸發layout,從而使內聯元素擁有了display:inline-block屬性的表症。從上面的這個分析,也不難理解為什麼ie下,對塊元素設定display:inline-block屬性無法實現inline-block的效果。這時塊元素僅僅是被display:inline-block觸發了layout,而它本就是行布局,所以觸發後,塊元素依然還是行布局,而不會如opera中塊元素呈遞為內聯物件。

ie下塊元素如何實現display:inline-block的效果?

有兩種方法:

1、先使用display:inline-block屬性觸發塊元素,然後再定義display:inline,讓塊元素呈遞為內聯物件(兩個display要先後放在兩個css宣告中才有效果,這是ie的乙個經典bug,如果先定義了display:inline-block,然後再將display設回inline或block,layout不會消失)。**如下(...為省略的其他屬性內容):

div 

div 

2、直接讓塊元素設定為內聯物件呈遞(設定屬性display:inline),然後觸發塊元素的layout(如:zoom:1等)。**如下:

div 

行內元素 塊級元素和行內塊級元素

而標籤的屬性是可以轉換的 display inline 轉換為行內元素 display linline block 轉換為行內塊元素 display block 轉換為塊級元素。行內元素 無法設定寬高 margin和padding上下無效,只有左右有效果 總是和相鄰的行內元素在同一行上,預設排列方式...

行內元素 塊級元素和行內塊元素

a 標籤定義鏈結 b 字型加粗 br 換行 i 斜體文字效果 img 在網頁中嵌入 input 輸入框 span 組合文件中的行內元素 small 呈現小號字型效果 big 呈現大號字型效果 sub 定義下標文字 sup 定義上標文字 div 定義文件中的分割槽或節 dl 定義列表 dt 定義列表中...

塊級元素 行內元素和行內塊元素

每個塊元素通常都會獨自佔據一整行或多整行,可以對其設定寬度 高度 對齊等屬性,常用於網頁布局和網頁結構的搭建。行內元素的特點 1 和相鄰行內元素在一行上。2 高 寬無效,但水平方向的padding和margin可以設定,垂直方向的無效。3 預設寬度就是它本身內容的寬度。4 行內元素只能容納文字或則其...