-
页面中标签都是一个盒子
-
盒子模型的属性
width :宽度
height : 高度
padding :内边距,是盒子内容与边框之间的距离
margin :外边距,是盒子之间的距离
border :边框 -
盒子模型的计算
宽度:边框的宽度2 + 内边距2 + 内容的宽度
高度:边框的宽度2 + 内边距2 + 内容的高度
保持盒子不变的情况下,当增加内边距的时候,内容的宽度或高度就必须 相应的减少 -
属性
width:宽度 设置宽度
height:高度 设置高度border: 线性宽度 线性样式 颜色
border-left-width: 设置一边的宽度(上下右一样)
border-left-style:设置一边的样式(上下右一样)
border-left-color:设置一边的颜色(上下右一样)
border-width:设置四边的宽度
border-width:上宽度 右宽度 下宽度 左宽度
border-width: 上下宽度 左右宽度
border-width:上宽度 左右宽度 下宽度
border-style:设置边框四边的样式 (solid 实线 dotted 点状线 dashed 虚线 double 双线)
border-style:上边样式 右边样式 下边样式 左边样式
bordre-style: 上下边样式 左右边样式
border-style: 上边样式 左右边样式 下边样式
border-color:设置四边的颜色
border-color:上边框颜色 右边框颜色 下边框颜色 左边框颜色
border-color: 上下边框颜色 左右边框颜色
border-color: 上边框颜色 左右边框颜色 下边框颜色padding:内边距
padding: 上内边距 右内边距 下内边距 左内边距
padding: 上内边距 左右内边距 下内边距
padding: 上下内边距 左右内边距
padding-left: 设置左边内边距
padding-right:设置右边内边距
padding-top:设置上边内边距
padding-bottom:设置下边内边距
padding在标准文档流下设置内边距没有问题margin:外边距
margin:上外边距 右外边距 下外边距 左外边距
margin:上下外边距 左右外边距
margin: 上外边距 左右外边距 下外边距
margin-left:设置左边的外边距
margin-right:设置右边的外边距
margin-top:设置上边的外边距
margin-bottom:设置下边的外边距
在标准文档流中,margin在水平方向上的外边距设置没有问题,但是在垂直方向上有塌陷问题,外边距以最大的外边距为基准,在父子盒子中,子盒子在垂直方向上设置外边距时,会和父盒子一起移动,可以使用浮动来解决这个问题,设置浮动之后,就不符合标准文档流,这是外边距就不会出现问题 -
初始浮动
在页面将标签设置浮动之后,页面就变成了非标准文档流,标签不占据文档的大小,标签可以在一行内线性展示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>盒子模型</title>
<style>
*{
padding: 0;
margin: 0;
}
.box{
width: 100%;
height: 50px;
background-color: #333;
}
.container{
width: 1500px;
height: 50px;
background-color: rgb(0, 140, 255);
margin-left: auto;
margin-right: auto;
}
.box .l-child{
width: 500px;
height: 50px;
background-color: rgba(197, 66, 66, 0.747);
float: left;
}
.box .r-child{
width: 100px;
height: 50px;
background-color: rgb(214, 10, 214);
float: right;
}
.box .info-child{
width: 200px;
height: 50px;
background-color: green;
margin-right: 50px;
float: right;
}
</style>
</head>
<body>
<div class="box">
<div class="container">
<div class="l-child"></div>
<div class="r-child"></div>
<div class="info-child"></div>
</div>
</div>
</body>
</html>