前段時間剛剛從C/S過度到B/S,提到B/S就不能說CSS,而說起CSS又不能落下盒子模型。在CSS誕生的時候就有了盒子模型的概念,網頁中大部分的元素都能構成一個盒子模型,。盒子模型無非就是描述的元素的尺寸跟位置,只要掌握好這兩點就可以靈活的運用盒子模型來布局了。下圖是盒子模型的基本元素和屬性:
下圖是一個盒子模型的基本模型,網頁中每個元素大概都可以用下圖的模型來描述。
element: 元素。有的地方也叫做content,譯為內容。
padding: 內邊距。默認值為0,不可以為負值。具體使用如下:
padding: 10px 20px 30px 40px; /*設置元素內邊距的上、右、下、左的值分別是10、20、30、40像素*/ padding: 10px 20px 30px; /*設置元素內邊距的上、右、下、左的值分別是10、20、30、20像素*/ padding: 10px 20px; /*設置元素內邊距的上、右、下、左的值分別是10、20、10、20像素*/ padding: 10px; /*設置元素內邊距的上、右、下、左的值均為10像素*/
可見,如果對四個方向均進行設置,那么就按設置的值,如果只設置上、右,那么下、左默認為上、右的值,如果只設置一個值,那么四個方向都為此值。另外四個值也可以單獨設置,對應屬性為padding-top、padding-right、padding-bottom、padding-left。
margin: 外邊距。默認值為0,與內邊距不同的是它的值可以為負值,使用方法與內邊距相同,不多說。
border: 邊框。用來設置邊框的粗細、樣式、顏色等屬性。
/*設置元素邊框樣式為實線,顏色為黑色,粗度為20像素*/ border-style: solid; border-color: black; border-width: 20px; /*設置元素上邊框粗度為15像素,左邊框樣式為雙線,右邊框顏色為紅色*/ border-top-width: 15px; border-left-style: double; border-right-color: red;
注意:如果上下文設置有沖突,則按照下面的設置,以上代碼的效果為上邊框為15像素,其他邊為20像素,其他屬性同理。
width: 寬度。指的是element的寬度,不是盒子的寬度。
height: 高度。指的是element的高度,不是盒子的高度。
盒子的尺寸根據下圖應按一下方式計算:
盒子寬度=width + padding-left + padding-right + border-left-width + border-right-width
盒子高度=height + padding-top + padding-bottom + border-top-width + border-bottom-width
了解了以上內容,盒子模型基本就沒問題了,掌握了盒子模型CSS也就差不多了,剩下的無非也就是將一些基本的屬性合理組織,配合使用了。只要多練習想要調出美觀大方的CSS樣式不是什么難事。