創新易聯歡迎您!13年專注深圳網站建設

深圳網站制作:不要告訴我你懂margin

日期:2014-08-27 | 來源:易聯網站建設公司 | 閱讀:

      深圳網站建設www.gkibha.live )作為市場資深品牌,8年來,立足廣東,面向全國,已服務過3000多家具有頂級發展潛力的企業,并一直保持良好的合作伙伴關系,成為中國第一高端精品網站設計策劃機構,網站建設第一品牌!

 

你真的了解margin嗎?你知道margin有什么特性嗎?你知道什么是垂直外邊距合并?margin在塊元素、內聯元素中的區別?什么時候該用 padding而不是margin?你知道負margin嗎?你知道負margin在實際工作中的用途嗎?常見的瀏覽器下margin出現的bug有哪些?……

 

寫css,你少不了與margin打交道,而對于這個平時我們最常用的css屬性我們并非十分了解。介于此我打算寫下這篇文章,一來是自己工作中的總結,也是對自己知識的一次梳理。

 

Margin是什么

 

CSS 邊距屬性定義元素周圍的空間。通過使用單獨的屬性,可以對上、右、下、左的外邊距進行設置。也可以使用簡寫的外邊距屬性同時改變所有的外邊距。——W3School

 

邊界,元素周圍生成額外的空白區。“空白區”通常是指其他元素不能出現且父元素背景可見的區域。——CSS權威指南

 

我比較喜歡使用“外邊距”這個詞來解釋margin(同理padding可以稱之為“內邊距”,但是我又恰恰喜歡稱呼padding為“補白”或者“留白”),我們可以很清楚的了解到margin的最基本用途就是控制元素周圍空間的間隔,從視覺角度上達到相互隔開的目的。

 

Margin的特性

 

margin始終是透明的。

 

margin通過使用單獨的屬性,可以對上、右、下、左的外邊距進行設置。即:margin-top、margin-right、margin-bottom、margin-left。

 

外邊距的 margin-width 的值類型有:auto | length | percentage

 

也可以使用簡寫的外邊距屬性同時改變所有的外邊距:margin: top right bottom left;(eg: margin:10px 20px 30px 40px) 記憶方式是元素周圍正上方順時針“上右下左”記憶。

 

并且規范還提供了省略的數值寫法,基本如下:

 

1、如果margin只有一個值,表示上右下左的margin同為這個值。例如:margin:10px; 就等于 margin:10px 10px 10px 10px;

 

2、如果 margin 只有兩個值,第一個值表示上下margin值,第二個值為左右margin的值。例如:margin:10px 20px; 就等于 margin:10px 20px 10px 20px;

 

3、如果margin有三個值,第一個值表示上margin值,第二個值表示左右margin的值,第三個值表示下margin的值。例如:margin:10px 20px 30px; 就等于 margin:10px 20px 30px 20px;

 

4、如果margin有四個值,那這四個值分別對應上右下左這四個margin值。例如:margin:10px 20px 30px 40px;

 

在實際應用中,個人不推薦使用三個值的margin,一是容易記錯,二是不容易日后修改,一開始如果寫成margin:10px 20px 30px;日后需求改動為上10px,右30px,下30px,左20px,你不得不還是得把這個margin拆開為margin:10px 30px 30px 20px;費力且不討好,不如一開始就老老實實的寫成margin:10px 20px 30px 20px;來的實在,不要為了現在節省倆個字節而讓日后再次開發的成本上升。

 

 

 

 

 

本文由深圳網站建設公司:創新互聯市場部整理,轉載時請保留此鏈接,謝謝合作!

—— 微信公眾號 ——

熱門標簽

急速赛车单机版