css-布局- box-sizing 的含义及作用

含义

了解过前端的同学都知道前端控制样式使用典型的盒子模型, 盒子模型由四部分构成,外边距(margin), 边框(border),内边距(padding), 内容content; box-sizing 就是指定盒子的大小和结构的。
它支持三种值:

  • box-sizing: content-box; //默认值 内容真正宽度 = 设置的宽度
  • box-sizing: border-box; // 内容真正宽度width= 设置的width- 左右padding - 左右border
  • box-sizing: inherit;// 规定从父元素继承此值

简单的说:如果要想盒子模型中的content宽度与通过css width 属性设置的宽度相同,则使用box-sizing: content-box, 若想使整个盒子的宽度固定(即使padding和border发生变化)时使用 box-sizing:border-box.

代码证明

	<body>
		<div  class="box-sizing-content-box">aaa</div>
		<div class="box-sizing-border-box">bbb</div>
	</body>
	<style>
		.box-sizing-content-box {
			width: 100px;
			height: 100px;
			background-color: red;
			border: 2px salmon solid;
			padding: 2px 2px;
			box-sizing: content-box; 
			margin-left: 2px;
			margin-right: 2px;
		}
		.box-sizing-border-box {
			width: 100px;
			height: 100px;
			background-color: red;
			border: 2px salmon solid;
			padding: 2px 2px;
			box-sizing: border-box;
			margin-left: 2px;
			margin-right: 2px;
		}
	</style>

效果

第一个盒子宽度比第二个框,但是width值设置是相同

这里盒子模型中content部分固定宽度是100

这里是border-box效果,width包括boder和padding占据的宽度

  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值