盒模型和行盒盒模型

目录

盒模型

1.盒子类型:

2.盒子的组成部分:

盒模型应用:

1.改变宽高范围:

2.改变背景覆盖范围:

3.溢出处理:

4.断词规则

5.空白处理:

行盒盒模型

1.显著特点

2.行块盒(通常用于作分页)

3.空白折叠

4.可替换元素和非可替换元素


盒模型

box:盒子 每个元素在页面中都会生成一个矩形区域(盒子)

1.盒子类型:

1)行盒,即display:inline

2)块盒,即display:block

行盒在页面中不换行,块盒独占一行

浏览器默认样式表的块盒元素:

html、body、div、header、footer、nav、section、aside、article、p、hr、h1-h6、ul、ol、dl、form、table、tobody、thead、tfoot、tr等

浏览器默认样式表的行盒元素:

span、a、img、textarea、button、input、br、label、select、canvas、progress、cite、code、strong、em、audio、video、bi等

2.盒子的组成部分:

无论是行盒还是块盒,都由下面几个部分组成,从内到外分别为

1)内容content

width、height盒子内容的宽高(内容部分通常叫盒子的内容盒

2)填充padding

盒子边框到盒子内容的距离

“填充区”+“内容区”=“填充盒”

padding-left、padding-right、padding-top、padding-button

padding简写属性、padding:上,右,下,左 padding:上下,左右

3)边框border

边框=边框样式+边框宽度+边框颜色

边框盒=填充区+内容区+边框

边框样式:border-style:sold

边框宽度:border-width:可简写

边框颜色:border-color:字体颜色(默认)

4)外边距margin

边框到其他盒子的距离

margin-top、margin-button、margin-left、margin-right

margin为速写属性

盒模型应用:

1.改变宽高范围:

1)默认情况下,width和height设置的内容是内容盒的宽高

2)页面重构师将psd文件(设计稿)制作为静态页面

3)当衡量设计稿的时候,往往使用的是边框盒,但设置width、height则设置的是内容盒

4)在实际开发中要么通过精确计算,要么通过box-sizing来实现页面

2.改变背景覆盖范围:

默认情况下,背景覆盖边框盒

可以通过backrgound-clip进行修改

3.溢出处理:

overflow控制内容溢出边框盒后的处理方式

overflow-x、overflow-y、overflow是一个简写属性

取值:

visible(默认值。内容不会被修剪,会呈现在元素框之外)

hidden(内容会被修剪,并且其余内容不可见)

scroll(内容会被修剪,浏览器会显示滚动条以便查看其余内容)

auto(由浏览器定夺,如果内容被修剪,就会显示滚动条)

4.断词规则

word-break会影响文字在什么位置被截断换行

normal:普通CJK字符(文位位置截断)非CJK字符(单词位置截断)

break-all:截断所有,所有字符都在文字处截断

keep-all:保持所有,所有文字都在单词间截断(空格处)

5.空白处理:

1)white-space:nowrap(不换行)

2)overflow:hidden(溢出隐藏)

3)text-overflow(圆点代替)

以上三种方法可控制单行文本隐藏,多行文本隐藏需用到js

white-space:normal(连续的空白符会被合并,换行符会被当作空白符来处理)

white-space:nowrap(和 normal 一样,连续的空白符会被合并。但文本内的换行无效)

white-space:pre(连续的空白符会被保留。在遇到换行符或者<br>元素时才会换行)

行盒盒模型

1.显著特点

1)盒子沿着内容沿伸

2)行盒不能设置宽高

3)内边距(填充区)水平方向有效,垂直方向影响背景,不会实际占据空间

    调整行盒的宽高应该使用字体大小,行高,文字类型,从而间接调整

4)边框(与内边距一样)

5)外边距(与3、4一样)

2.行块盒(通常用于作分页)

display:inline-block

1)不独占一行

2)盒模型中的所有尺寸有效

3.空白折叠

空白折叠会发生在行盒或行块盒内部,或行盒或行块盒之间

4.可替换元素和非可替换元素

大部分元素页面上显示结果,取决于元素内容,即非可替换元素(p、div、span、a)

少部分元素页面上显示结果,取决于元素属性,即可替换元素(img、video、audio)

绝大部分可替换元素均为行盒

可替换元素类似于行块盒,盒模型中所有尺寸有效

object-fit:contain

(被替换的内容将被缩放,以在填充元素的内容框时保持其宽高比。 整个对象在填充盒子的同时保留其长宽比,因此如果宽高比与框的宽高比不匹配,该对象将被添加黑边)

object-fit:fill

(被替换的内容正好填充元素的内容框。整个对象将完全填充此框。如果对象的宽高比与内容框不相匹配,那么该对象将被拉伸以适应内容框。)

object-fit:cover

(被替换的内容在保持其宽高比的同时填充元素的整个内容框。如果对象的宽高比与内容框不相匹配,该对象将被剪裁以适应内容框。)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值