盒子模型是网页布局的基础。
因为盒子是矩形,所以各个属性又分为个方向。顺序为:上、右、下、左。
padding定义:
a、当元素的 Padding 内边距(填充)被清除时,所"释放"的区域将会受到元素背景颜色的填充。
b、单独使用填充属性可以改变上下左右的填充。缩写填充属性也可以使用,一旦改变一切都改变。
/*padding用法的实例*/
div1{
padding: 20px 40px 20px 40px;
/*内边距距离为:上20px,右40px,下20px,左40px*/
}
div2{
padding: 20px 40px ;
/*内边距距离为:上下20px,左右40px*/
}
div3{
padding: 20px 40px 20px;
/*内边距距离为:上20px,左右40px,下20px*/
}
div4{
padding: 20px ;
/*内边距距离为:上下左右20px,*/
}
实例(1):
<html>
<head>
<meta charset="UTF-8">
<title>list-style title>
<style type="text/css" media="screen">
body{
background-color: #CCC;/*页面背景为灰色*/
}
div{
width: 600px;/*长度600px*/
height: 300px;/*高300px*/
padding: 20px;/*外边距上下左右20px*/
background-color: #60C5F1;/*盒模型背景为天蓝色*/
}
style>
head>
<body>
<div>div>
body>
html>
在web中实际应用padding:
margin定义:
a、margin清除周围的元素(外边框)的区域。margin没有背景颜色,是完全透明的
b、margin可以单独改变元素的上,下,左,右边距。也可以一次改变所有的属性。
/*padding用法的实例*/
div1{
margin: 20px 40px 20px 40px;
/*外边距距离为:上20px,右40px,下20px,左40px*/
}
div2{
margin: 20px 40px ;
/*外边距距离为:上下20px,左右40px*/
}
div3{
margin: 20px 40px 20px;
/*外边距距离为:上20px,左右40px,下20px*/
}
div4{
margin: 20px ;
/*外边距距离为:上下左右20px,*/
}
div5{
margin: 20px auto;
/*外边距距离为:上下20px,左右自动适应*/
}
实例(2):
<html>
<head>
<meta charset="UTF-8">
<title>list-style title>
<style type="text/css" media="screen">
body{
background-color: #CCC;/*页面背景为灰色*/
}
div{
width: 600px;/*长度600px*/
height: 300px;/*高300px*/
margin:20px auto;/*外边距上下20px,左右自动适应*/
background-color: #60C5F1;/*盒模型背景为天蓝色*/
}
style>
head>
<body>
<div>div>
body>
html>
页面居中{ margin: 0px auto;}
注意:嵌套 div 时 margin-top 会合并到父级元素。解决方案:设置父级元素的 overflow: hidden;(超出内容隐藏)
border 定义:
a、border 围绕元素内容和内边距的一条或多条线,对于这些线条,可以自定义它们的颜色、宽度以及样式。
/*padding用法的实例*/
div{
border-color: red;/*边框的颜色*/
border-width: 20px;/*边框的宽度*/
border-style: solid; /*solid定义实线边界*/
/*style属性值有很多可以设置边框的样式。如:dotted 点线框,dashed 虚线框,*/
}
实例(3):
<html>
<head>
<meta charset="UTF-8">
<title>list-style title>
<style type="text/css" media="screen">
body{
background-color: #CCC;/*页面背景为灰色*/
}
div{
width: 600px;/*长度600px*/
height: 300px;/*高300px*/
border-color: yellow;/*边框为黄色*/
border-width: 5px;/*边框宽为5px*/
border-style: solid;/*边框的格式为实线*/
background-color: #60C5F1;/*盒模型背景为天蓝色*/
}
style>
head>
<body>
<div>div>
body>
html>
border:width style color;
注意:border 属性缩写和大多数属性缩写的要求都是一样的,顺序不能变,不写的话会自动填入默认值。
div{
border:5px solid yellow;
/*边框为 宽5px,实线, 黄色*/
}
这个缩写就可以省掉很多的代码量
实例(4):
<html>
<head>
<meta charset="UTF-8">
<title>list-style title>
<style type="text/css" media="screen">
body{
background-color: #CCC;/*页面背景为灰色*/
}
div{
width: 600px;/*长度600px*/
height: 300px;/*高300px*/
border: 5px solid yellow;/*边框宽为5px,实线,黄色*/
background-color: #60C5F1;/*盒模型背景为天蓝色*/
}
style>
head>
<body>
<div>div>
body>
html>
在web中显示(和上一个实例一样,但是代码可以少些一部分):
(1)元素的实际大小(实际宽、高)
(2)元素需要占据的位置:
(1)标准模式的盒模型是由 w3c 提出,它的计算方法是:
(2)由于各个浏览器设计的不同,盒模型在不同的浏览器中的表现也不同。
(3)怪异模式是指在 IE6 及更早的 IE 版本下盒模型的计算方法:
(4)标准 w3c 盒子模型和 IE 盒子模型的区别:
实例6(页面常用的三行布局类型):
<html>
<head>
<meta charset="UTF-8">
<title>list-style title>
<style type="text/css" media="screen">
body{
margin: 0px auto;/*页面居中,去掉默认的盒模型格式*/
background-color: #CCC;/*页面背景为灰色*/
}
.DIV1{
height: 50px;/*高100px*/
background-color: #60C5F1;/*盒模型背景为天蓝色*/
}
.DIV2{
height: 550px;/*高600px*/
background-color: yellow;/*盒模型背景为天黄色*/
}
.DIV3{
height: 120px;/*高100px*/
background-color: rgb(255, 0, 0);/*盒模型背景为天红色*/
}
style>
head>
<body>
<div class="DIV1">顶部导航栏div>
<div class="DIV2">页面主体内容div>
<div class="DIV3">底部友情链接以及版权div>
body>
html>