盒子模型

盒子模型_第1张图片
chrome盒子模型

一、content

可为文字、图片、标签元素等

二、边框border

盒子模型的边框就是围绕着内容及补白的线,这条线你可以设置它的粗细、样式和颜色(边框三个属性)。
p{border:2px dotted #ccc;}

1、border-style(边框样式)常见样式有:

  • dashed(虚线)
  • dotted(点线)
  • solid(实线)

2、border-color(边框颜色)中的颜色可设置为十六进制颜色(#888

3、border-width(边框宽度)中的宽度也可以设置为(但不是很常用),最常还是用象素(px):

  • thin
  • medium
  • thick
    4、 允许只为一个方向的边框设置样式:如
    div{border-bottom:1px solid red;}

三、填充padding

元素内容与边框之间是可以设置距离的,称之为“填充”。填充也可分为上、右、下、左(顺时针)。如下代码:
div{padding:20px 10px 15px 30px;}
顺序一定不要搞混。可以分开写上面代码:

div{
   padding-top:20px;
   padding-right:10px;
   padding-bottom:15px;
   padding-left:30px;
}

如果上、右、下、左的填充都为10px;可以这么写
div{padding:10px;}

如果上下填充一样为10px,左右一样为20px,可以这么写:
div{padding:10px 20px;}

四、边界margin

元素与其它元素之间的距离可以使用边界(margin)来设置。边界也是可分为上、右、下、左。如下代码:
div{margin:20px 10px 15px 30px;}
也可以分开写:

div{
   margin-top:20px;
   margin-right:10px;
   margin-bottom:15px;
   margin-left:30px;
}

如果上右下左的边界都为10px;可以这么写:
div{ margin:10px;}

如果上下边界一样为10px,左右一样为20px,可以这么写:
div{ margin:10px 20px;}
总结一下:padding和margin的区别,padding在边框里,margin在边框外。

五、 宽度和高度

一个元素实际宽度(盒子的宽度)=左边界+左边框+左填充+内容宽度+右填充+右边框+右边界。


盒子模型_第2张图片
总宽度

width=100px;是指从哪到哪


盒子模型_第3张图片
W3C和 IE下的width
Margin(外边距) - 清除边框外的区域,外边距是透明的。
Border(边框) - 围绕在内边距和内容外的边框。
Padding(内边距) - 清除内容周围的区域,内边距是透明的。
Content(内容) - 盒子的内容,显示文本和图像。

例如:

//盒子
margin:20px;
border:2px;
padding:5px;
width:100px;
height:50px;

W3C盒模型大小:
总宽度=width+2margin+2border+2padding=200+220+22+25=254px;
总高度=height+2margin+2border+2padding=50+220+22+25=104px;

IE 盒模型大小:
总宽度=width+2margin=100+220=140px;
总高度=height+2margin=50+220=90px;

只有250像素的空间。让我们设置总宽度为250像素的元素:

div {
    width: 220px;
    padding: 10px;
    border: 5px solid gray;
    margin: 0; 
}

最终元素的总宽度计算公式是这样的:
总元素的宽度=宽度+左填充+右填充+左边框+右边框+左边距+右边距
元素的总高度最终计算公式是这样的:
总元素的高度=高度+顶部填充+底部填充+上边框+下边框+上边距+下边距

你可能感兴趣的:(盒子模型)