您好,登錄后才能下訂單哦!
本篇內容主要講解“如何理解ol和ul的padding和margin默認值”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何理解ol和ul的padding和margin默認值”吧!
在《CSS Mastery》一書的第5章中,作者說IE和Opera使用margin-left來縮進列表,而Safari和Firefox使用padding-left。經過我的實際測試,發現Opera 9(我實測的是Opera 9.23)同FF和Safari一樣,也是使用padding-left的。更精確的說,它們的默認樣式應該是:
ol, ul { padding-left:40px; }
而IE的默認樣式是:
ol, ul { margin-left:30pt; }
Opera 8或者以前的版本是否和IE一樣?有興趣的同志可以自行測試。
但這至少說明一點,除了微軟之外的瀏覽器廠商都達成一致意見,list的縮進應該使用padding來控制。其實這很好理解,縮進的是每一個item而不是整個的list。設計者對list有怎樣的期望呢?比如說設置了ul的background:green,多數人應會期待整個ul(即包括了padding的部分)都使用綠色背景色,而不會希望在list的左側缺失30pt(通常等于40px)。其次,marker部分(就是item之前的小圓點或者數字序號部分)是在li之外的,但從邏輯上說它屬于list的一部分,在list之內。而IE使用margin,實際上就導致了marker部分是懸于list之外。實際上,如果list獲得了layout(hasLayout),你就發現marker不見了!因為在IE臭名昭著的layout模型里,hasLayout之后,元素對象會自行處理其所占據區域的呈現,但是無法處理其區域之外。這也是其的width/height實際上類似min-width/min-height的原因,因為它無法繪制overflow到外面的部分。
CSS Code復制內容到剪貼板
<style>
ol { background:green; }
ol#myList2 { zoom:1; }
</style>
<ol id="myList1">
<li>First item...</li>
<li>Second item...</li>
<li>Third item...</li>
</ol>
<ol id="myList2">
<li>First item...</li>
<li>Second item...</li>
<li>Third item...</li>
</ol>
所以,比較好的方法就是給所有網頁統一list的margin和padding,比如:
ol, ul { margin-left:0; padding-left:40px; }
或者也可以只針對IE進行修復:
ol, ul { _margin-left:0; _padding-left:40px; }
到此,相信大家對“如何理解ol和ul的padding和margin默認值”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。