塊級元素與行內無素的區別

2022-02-21 20:29:59 字數 1358 閱讀 8258

頁面中元素一般分為兩種:塊級元素,行內元素(內聯元素),即然分為兩種元素,那麼他們之間必然有區別:

1.塊級元素總是獨自佔一行,前面和後面就好像有個換行符,內聯元素總是和其它的內聯兄弟佔一行

2.塊級元素可以設定寬和高度值,內聯元素就不行了,他們的寬和高總是隨著自身的內容自動擴大和縮小

3.塊級元素的margin和padding都正常,內聯元素左右maring和左右padding正常,上下不正常不識別,也就是說不能通過margin-top和padding-top來改變行高

關於第3點補充下:

行內元素margin和padding左右間距在各個瀏覽器中解析的都完整,上下間距那就是杯具,各個瀏覽器解析還不一樣,設定個背景貌似人家又認了,但

是他周圍的元素當他設定的上下間距不存在,所以在以後的專案中,不給行內元素設定上下的margin和padding了

總結:想讓自己獨佔一行就會塊級元素(div,dl,dt,dd,ul,li...),想讓元素和其它元素在一行就用行內元素(span,a,img),他們之間可以通過樣式來轉換disply:block;display:inline;

還有乙個屬性:

display:inline-block;

將物件呈遞為內聯元素,與其它的元素同處一行,但是內部又呈現出塊級元素,也就是可以設定寬和度,打破了塊級元素和內聯元素的區別,此屬性,ie8,ff3, 其它的標準瀏覽器都識別,ie6,ie7,ff2不識別此屬性,但是在ie6,7下面使用又好像識別了,是因為他觸發了ie的haslayout,(類似於zoom:1),所以從表現上來說他們支援這個屬性.(可以拿塊級元素來試驗,塊級元素使用了這個屬性就沒有相應的功能了),ff2//有可能會導致文字對齊問題

如果塊狀元素(div..)表現這種屬性,與外部溝通是內聯,內部又是塊狀的可以這樣設定(display:inline;zooom:1)或

divdiv這兩個順序不能顛倒了,不然就失

效了再補充一下:

行內元素的行間距:

行內元素行高問題

行內元素行高問題

他們的行高相同,也就是說行內元素的行高會影響其它行內元素的行高

上次在乙個專案中碰到了乙個莫名的問題:哥,你對齊啊

小方框與文字對不齊,小方框會向下突點,這時候設定input 能夠使他們對齊,這個問題ok了,又有乙個問題出現了,瀏覽器表現不統一,ff和ie8的label標籤表現正常,沒有間距,ie6和ie7的label標籤左右都有一定的間距,在一開始reset為0都不行,還是有間距,開始查原因,原來是瀏覽器表現不一致,ff和ie8標準瀏覽器解析的很正常,間距為0,ie7左右有6畫素的間距,ie6有4畫素的間距,以後為了排版在各個瀏覽器一致的情況

margin-left:6px;*margin-left:0px;_margin-left:2x;

塊級元素與行內元素區別

1.塊級元素 特性 佔一行顯示,可以設定寬度和高度 屬性 描述 位址長的引用 標題 列表中定義條目 劃分區域 定義列表 列表中專案 框架集表單 標題 一級到六級 一條水平線 為fieldset元素定義標題 列表給不支援框架的瀏覽器顯示文字,frameset元素內部 在指令碼未被執行時的替代內容 有序...

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

1 塊級元素 div p form ul,li ol,dl,form,address,fieldset,hr,menu,table 2 行內元素 span,strong,em,br,img input,label,select,textarea,cite,塊級元素會單獨佔一行,預設情況下,其寬度自動...

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

htm元素一般分塊級元素和行內元素。塊級元素 塊級元素單獨一行,可以設定寬度高度,可以設定margin,padding。可以成為其他元素的容器,可以容納塊級元素可行內元素。常見的塊級元素有div,p h1 h6,ul,table,form,hr等。行內元素 行內元素設定width無效,height無...