献给亲爱的女儿惜惜和园园......
CSS大小设置实例——盒子模型
一、浏览器效果和Dreamweaver设计视图:
二、HTML
<head>
<meta http-equiv="Content-Type" content="text/html charset=utf-8" />
<link href="css/reset.css" rel="stylesheet" type="text/css" />
<link href="css/layout.css" rel="stylesheet" type="text/css" />
<title>盒子模型</title>
</head>
<body>
<div id="box">
<div id="content"></div>
</div>
</body>
</html>
三、CSS
#box {
width:200px
height:100px
margin:10px 20px 30px 40px
border:solid 10px red
padding:10px 20px 30px 40px
background-color:green
}
#content {
width:100%
height:100%
background:blue
}
【说明】
1、本实例中使用了css reset.css,在这里,主要重置了body和div的{margin: 0padding: 0 }
2、在用CSS设计盒子时,可以设置盒子的宽(width)和高(height)属性,但是这个宽和高并不是盒子的实际宽和高,而是盒子内容的宽和高。
本例中,盒子的width和height是蓝色内容的宽和高,而盒子实际的宽和高是:
盒子的实际宽度=左边界+左边框+左填充+宽+右填充+右边框+右边界;
盒子的实际高度=上边界+上边框+上填充+高+下填充+下边框+下边界。
1.盒子简介:在CSS处理网页时,它认为每个元素都包含在一个不可见的盒子里,那么网页布局就相当于摆放盒子
2.盒子模型组成部分:
内容区(content)
内边距(padding)
外框(border)
外边距(margin)
1.box的宽高可以用 width和heigh t来设置
注意,width和height只是设置盒子内容区大小,而不是盒子的整个大小,盒子可见框的大小由内容区,内边距和边框共同决定。因此计算 盒子大小=内容区+边框+内边距
2.为元素设置边框
要为一个元素设置红边框 必须指定三个样式(缺一不可)
border-width:边框的宽度
border-color:边框的颜色
border-style:边框的样式
使用border-width可以分别指定四个边框的宽度。
如果在border-width制定了四个值,则四个值会分别设置给 上右下左 ,按照顺时针的方向设置的。
如果指定三个值,则三个值会分别设置给 上 左右 下
如果当指定两个值,则两个值会分别设置给 上下 左右
如果当指定一个值,则四边 全都是该值
这个规律同时适用于border-color / style
除了border-width,CSS中还提供了四个 border-xxx-width
xxx的值可能是top right bottom left , 专门用来设置指定边的宽度 。
和宽度一样,color也提供四个方向的样式,可以分别指定颜色。例如,border-xxx-color
style也可以分别指定4个边的边框样式,规则和width一样,同时它也提供border-xxx-style四个样式,来分别设置四个边。
border 的边框样式简写方式,通过它可以同时设置四个边框的样式,宽度,颜色, 而且没有任何的顺序要求。但是!border一指定就是同时指定四个边不能分别指定。
border-xxx ,例如border-top border-right border-bottom border-left
可以单独设置四个边的样式,规则和border一样,只不过他只对一个边生效。
内边距(padding),指的是盒子的内容区域盒子边框之间的距离。
一共有四个方向的内边距,可以通过:
padding-top
padding-right
padding-left
padding-bottom
来设置四个方向的内边距
内边距会影响盒子的可见框的大小,元素的背景会延伸到内边距。
盒子的大小由内容区、内边距和边框共同决定。
盒子可见框的宽度=border-left-width + padding-left + width + padding-right + border-right-width
可见框的高度=border-top-width + padding-top + height + padding-bottom + border-bottom-width
使用padding可以同时设置四个边框的样式,规则和border-width一致
外边距指的是当前盒子与其他盒子之间的距离,他不会影响可见框的大小,而是会影响到盒子的位置。
盒子有四个方向的外边距:
margin-top
margin-rigtht
margin-bottom
margin-left
由于页面中的元素都是靠左上摆放的,所以注意当我们设置上和左外边距时,会导致盒子自身的位置发生改变。
而如果是设置右和下外边距会改变其他盒子的位置
外边距也可以指定一个负值,如果外边距设置的是负值,则元素会向反方向移动
margin还可以设置为auto,auto一般只设置给水平方向的margin
如果只指定,左外边距或者右外边距的margin为auto则会将外边距设置为最大值
垂直方向外边距如果设置为auto,则外边距默认就是0
如果将left和right同时设置为auto,则会将两侧的外边距设置为相同的值,就可以使元素自动在父元素中居中,所以我们经常将左右外边距设置为auto,以使元素在父元素中水平居中。
同时,外边距同样可以使用简写属性margin,可以同时设置四个方向的外边距,规则和padding一样。
将两个小盒子水平居中 通常是使用 margin auto来实现,间距30 可以外边距都为 15 ,也可以在一个盒子设置外边距为30 px。
这里可以用两种方法来解决,第一个就是给他们一个父元素,两个盒子加上边边距就是430 为父元素的宽 ,加上margin 0 auto的属性就实现了第二就是用弹性盒来做 同样加父元素 只不过注意将盒子为弹性盒 ,display的值为 flex ,父元素加上属性 justify-content:center 就可以实现了。
平时需要多看一下这方面的教程 和 多敲多练习这方面的。