Css 的盒模型+块级元素和行内元素

94 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第22天点击查看活动详情
一、Css 的盒模型
盒子模型(Box Modle)可以用来对元素进行布局,包括内边距,边框,外边距,和实际内容这几个部分。 盒子模型分为两种:第一种是 W3c 标准的盒子模型(标准盒模型) 、第二种 IE 标准的盒子模型(怪异盒模型)
1、标准盒模型与怪异盒模型的表现效果的区别之处:
1)标准盒模型中 width 指的是内容区域 content 的宽度;height 指的是内容区域 content 的高度。 标准盒模型下盒子的大小 = content + border + padding + margin
2)怪异盒模型中的 width 指的是内容、边框、内边距总的宽度(content + border +padding);height 指的是内容、边框、内边距总的高度
怪异盒模型下盒子的大小=width(content + border + padding) + margin
除此之外,我们还可以通过属性 box-sizing 来设置盒子模型的解析模式可以为 box-sizing 赋两个值: content-box:
默认值,border 和 padding 不算到 width 范围内,可以理解为是 W3c 的标准模型(default)。总宽=width+padding+border+margin
border-box:border 和 padding 划归到 width 范围内,可以理解为是 IE 的怪异盒模型,总宽=width+margin

二、哪些是块级元素那些是行内元素,各有什么特点
行内元素: a、span、b、img、strong、input、select、lable、em、button、textarea 、selecting 块级元素:div、ul、li、dl、dt、dd、p、h1-h6、blockquote、form
行内、块状元素区别:
(1).块级元素会独占一行,其宽度自动填满其父元素宽度行内元素不会独占一行,相邻的行内元素会排列在同一行里,知道一行排不下,才会换行,其宽度随元素的内容而变化
(2). 一般情况下,块级元素可以设置 width,height 属性,行内元素设置 width, height 无效(注意:块级元素即使设置了宽度,仍然是独占一行的)
(3).块级元素可以设置 margin 和 padding. 行内元素的水平方向的 padding-left,paddingright,margin-left,margin-right 都产生边距效果,但是竖直方向的 padding-top,paddingbottom,margin-top,margin-bottom 都不会产生边距效果。(水平方向有效,竖直方向无效)