css中边距和div宽高怎么算

html-css012

css中边距和div宽高怎么算,第1张

div的实际高度为margin+border+padding+height

也就是外边距+边框线+内边距+元素自身的高度。

例如:

div{margin: 10px padding: 10px border-width:10px height:50px }

那么  这个div实际占用页面的高度就是110px

盒子的高度 = content的高度 + padding-top(内上边距)+ padding-bottom(内下边距) + border-top(上边框边框) + border-bottom(下边框)

深入理解CSS盒子模型(The CSS Box Model)

如果了解了盒子模型(box model)的概念,了解它是如何决定某一个元素的最终尺寸的话,会有助理解一个元素如何在网页上定位的。盒子模型主要适用于块级元素。顺便提一个与此相关的概念:行内布局模型(inline layout model)——定义了行内元素是如何定位的,在行内元素格式(InlineFormatting)中有具体说明

盒子的尺寸的计算(Calculating BoxDimensions)

在CSS2.1中,块级元素只能是矩形形状的。当计算一个块级元素的整体尺寸时,需要同时把内容区域(content area)[注释1]的长宽,连同此元素的外边距,内边距,以及边框都计算在内

可以通过声明宽和高来定义一个元素的内容(content)的宽度和高度。如果没有做任何的声明,宽度和高度的默认值将是自动(auto)

对于浮动(floated)和绝对定位(absolutelypositioned)元素(包括固定定位(fixed)元素)来说, 自动状态的宽度会使generated box收缩到紧贴它内容大小。

 

我们知道,当我们放置一个块级元素于页面上时,并且不设置它的定位属性(relative,absolute,fixed),即position:static,或者设置了position:relative的情况下,块的宽度是延伸自动填充满它的父元素的宽度区域

height是元素自身的高度,line-height则是元素内部文字的行高,比如:

height:100pxline-height:20pxpadding:0

表示具有这个样式的元素的高度为100像素,里面的文字行高为20像素(换句话说就是可以排5行文字),内边距为0(如果不为0则元素的高度会被撑大)。

补充说明一下:如果一个元素的height和line-height相同,意味着这行文字在元素中垂直居中(但仅限文字,且只能一行)。