您现在的位置是:网站首页> 编程资料编程资料
解析CSS的box model盒模型及其内的子元素布局控制_CSS教程_CSS_网页制作_
2021-09-12
829人已围观
简介 盒模型是CSS控制布局的主要方式之一,尤其是内部的元素排列控制,这里我们将来解析CSS的box model盒模型及其内的子元素布局控制,需要的朋友可以参考下
css的两种盒模型介绍
CSS中Box model是分为两种,第一种是W3C的标准模型,另一种是IE的传统模型,他们相同之处都是对元素计算尺寸的模型,具体说就是对元素的width,height,padding,border以及元素实际尺寸的计算关系;他们不同之处呢?两者的计算方法不一至:
1、W3C的标准Box Model:
2、IE)传统下Box Model(IE6以下,不含IE6版本或“QuirksMode下IE5.5+”):
其实原则上来说Box Model是分得很细的,我们这里主要分了两个比较明显的地方,就是外盒模型和内合模型,如上面计算公式所示(后面我将会详细介绍一下CSS中的Box Model)。这样说大家可能还不太好理解,下面我们一起来看一个实际的例子,比如说现在有一个叫boxtest的Div,其具有下面一个属性
.boxtest { border: 20px solid; padding: 30px; margin: 30px; background: #ffc; width: 300px; }
我们先来看一下W3C标准浏览器(Firefox,Safari,Chrome,Opera,IE6+)和传统浏览器(IE6以下版本浏览器)的Layout截图

上图中明显可以看出IE6以下版本浏览器的宽度包含了元素的padding,border值,换句话来说在IE6以下版本其内容真正的宽度是(width-padding-boder)。用内外盒来说的话,W3C标准浏览器的内盒宽度等于IE6以下版本浏览器的外盒宽度。
盒模型的子元素控制
1.子元素上下对齐方式 box-align
例子:
- .demo {
- -webkit-box-align: center;
- -moz-box-align: center;
- -ms-box-align: center;
- box-align: center;
- }
值::
baseline – 基线
center – 居中
end – 底部
inherit – 继承
initial – 默认
start – 顶部
stretch – 拉伸
2.子元素左右对齐方式 box-pack
例子:
- .demo {
- -webkit-box-pack: center;
- -moz-box-pack: center;
- -ms-box-pack: center;
- box-pack: center;
- }
值:
center – 居中
end – 底部
inherit – 继承
initial – 默认
start – 顶部
justify – 拉伸
3.子元素排列方式 box-orient
例子:
- .demo {
- -webkit-box-orient: horizontal;
- -moz-box-orient: horizontal;
- -ms-box-orient: horizontal;
- box-orient: horizontal;
- }
值:
horizontal – 水平
vertical – 垂直
inherit – 继承
initial – 默认
inline-axis – 内轴
block-axis – 块轴
4.子元素排列顺序 box-ordinal-group
例子:
- .child {
- -webkit-box-ordinal-group:2;
- -moz-box-ordinal-group:2;
- box-ordinal-group:2;
- }
5.规定框的子元素的显示方向 box-direction
例子:
- .demo {
- -webkit-box-direction:reverse;
- -moz-box-direction:reverse;
- -ms-box-direction:reverse;
- box-direction:reverse;
- }
值:
reverse – 反方向
normal – 默认
inherit – 继承
相关内容
- CSS块级元素与行级元素详解 _CSS教程_CSS_网页制作_
- 超酷炫 CSS3垂直手风琴菜单_css3_CSS_网页制作_
- 提高CSS代码效率的编写技巧_CSS教程_CSS_网页制作_
- IE6和IE7中行内元素后的浮动元素被折行的问题解决_浏览器兼容教程_CSS_网页制作_
- CSS实现文字高光水波渐变的动态效果实例_CSS教程_CSS_网页制作_
- CSS性能优化提高css性能的方法 _CSS教程_CSS_网页制作_
- 纯CSS3实现图片无间断轮播效果_css3_CSS_网页制作_
- 利用CSS3实现自定义滚动条代码分享_css3_CSS_网页制作_
- 利用纯CSS实现动态的文字效果实例_CSS教程_CSS_网页制作_
- 使用纯css截断多行文本_CSS_网页制作_
