盒模型

标准盒模型

在这里插入图片描述
标准和模型的width和height代指content的宽和高 并非是盒子的真实宽高
因为盒子的大小是由content,padding,border三部分组成 再加上margin确定盒子在页面中的位置
其实我们常用的还是标准盒模型 也就是box-sizing中的content-box 指的是 width和height是content的宽高并不是盒子的宽高
So我们在给盒子加border或是padding的时候盒子会被撑大 要想保持盒子原本的大小还得去重新计算content的width height 非常麻烦
后来CS3里面给我们提供了一个方式box-sizing:content-box 也就是所谓的怪异盒模型

IE怪异盒模型

在这里插入图片描述
IE怪异盒模型好处
这里的盒子width和height指的是盒子的大小而不是内容的大小
也就是说 比如我写100100盒子最终也是100100不会被border,padding撑大, 它会自己通过自动缩放自己的content来实现盒子还是100*100 这样在写样式的时候就比较干净卫生了, 不需要每次都来计算width和height
So在大部分项目中都在应用这种box-sizing:content-box IE怪异盒模型
包括我看了Bootstrap以及各大ui组件element-ui 它们的公共样式里面源码大部分也是用的box-sizing:content-box 建议大家习惯性使用

现在在做移动端响应式开发的时候,其实好多布局方案我们可以应用于CS3新提供的 flex弹性伸缩盒模型来实现(膜拜阮一峰大大)

flex弹性伸缩盒模型

在这里插入图片描述
给父容器设置一个display:flex 这个盒子就会变成一个弹性伸缩盒子
盒子里面有两个轴一个是main axis(主轴,X轴),一个是cross axis(交叉轴,Y轴),盒子中的所有子元素都叫flex item(某一项)默认都是靠左上排列
可以通过设置justify-content主轴的排列方式 和align-items交叉轴的排列方式来控制flex item

以及多列布局(栅格化布局)

在这里插入图片描述
多用于pad 做一些文章类 类似于报纸
分左边中间右边三列布局 每列和每列之间的间隔线多粗多细 以及间隔多少 都可以通过以上属性来搞
OK~~
如果对你有一点点帮助的话点赞加收藏吧,互动必回噢~~~在这里插入图片描述

### CSS 盒子模型概念 CSS 盒子模型是网页布局的基础之一,用于描述页面上每个元素作为一个矩形区域的行为。这个矩形由四个部分组成:内容区(content)、内边距(padding)、边框(border)以及外边距(margin)。不同浏览器默认采用不同的模型计算方式。 #### 怪异模型与标准模型区别 在怪异模型中,`width` 和 `height` 属性不仅定义了内容区的尺寸,还包括了内边距和边框宽度,但不包含外边距[^1];而在标准模型下,这些属性仅指定了内容本身的大小,额外的空间则通过独立设定 `padding` 及 `border` 来增加整体占据空间[^2]。 为了兼容这两种模式,在现代Web开发实践中推荐显式声明 `box-sizing` 属性: - 当设置为 `content-box` 时遵循W3C标准模型; - 设置成 `border-box` 则模仿IE的传统行为,即把 padding 和 border 计入到指定的宽高之内。 ```css * { box-sizing: border-box; } ``` 上述代码片段展示了如何全局应用 `border-box` 模型给所有HTML标签,从而简化样式表编写并提高跨浏览器一致性。 ### 使用方法实例 假设有一个容器需要固定宽度为300px,并希望其内部填充物加上边界不超过此限值,则可以如下操作: ```html <div class="container"> <!-- 子元素 --> </div> ``` ```css .container { width: 300px; /* 设定总宽度 */ padding: 20px; /* 添加内边距 */ border: 5px solid black; /* 定义边框 */ box-sizing: border-box; /* 应用 IE/Edge 的模型 */ } ``` 这样即使设置了较大的内外间距,`.container` 实际占用的空间仍然保持为300像素不变。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值