注:以下實驗的元素均為塊級元素,inline-block和inline本身對margin某些方向上都是無效的,所以這裡不予討論。當塊元素width:auto時,margin-left和margin-right會增加元素的寬度
當有具體width時,margin-left向左移動,
margin-right 減少css的讀取寬度 如下圖 (也就是後面的元素會擠進來)
高度一般都自適應或者精確的值,體現的形式是一樣的
margin-top為負值 是向上移動
margin-bottom為負值 減少css的讀取高度(後面的元素擠上來)
除了塊元素未設定寬度會增加寬度外,其他的幾種情況都是反向移動或者減少css讀取的值。
原理,用float在同一行, 中間元素給100%, left元素 margin-left: -100%移動到最左邊,right元素margin-left: -100px;
html,body
body
.main
.main .in
.left,.right
.left
.right
原理: 父級給overflow:hidden; 裡面的元素用padding-bottom: 1000px; margin-bottom:-1000px; 給padding和overflow:hidden是為了讓高度一致,margin-bottom:1000px;去消除這個高度,就是看起來有那麼高,其實沒有,因為margin-bottom為負值的原因
body
ul.list
.main
.left
.right
.main,.left,.right
原理:外層list元素未設定寬度(width:auto),margin-right:-10px;這會導致外層list元素右邊增加寬度10px,那麼每行的最後乙個元素margin-right:10px就剛好list原來的邊界,即新增的寬度與一行最後乙個元素margin-right:10px相互抵消.
css中的預設margin
上班打醬油中,body的margin為8px webkit預設行高18px height18px 預設font size16px p預設margin是16px 0 16px 0 ul和ol有預設的margin left 40px的padding left和16px 0 16px 0 button有2...
css中的預設margin
上班打醬油中,body的margin為8px webkit預設行高18px height18px 預設font size16px p預設margin是16px 0 16px 0 ul和ol有預設的margin left 40px的padding left和16px 0 16px 0 button有2...
深入css中的margin
深入css中的margin 第一 margin top css 元素沒有任何定位的情況下,並且元素預設為block html div class outer div class inner div div 效果 原因,div預設的是我們塊級元素,它是獨佔一行的,當margin top的時候,整個行,...