浅谈CSS3 box-sizing 属性 有趣的盒模型


Posted in HTML / CSS onApril 02, 2019

盒模型的组成大家肯定都懂,由里向外content,padding,border,margin.

盒模型是有两种标准的,一个是标准模型,一个是IE模型。

浅谈CSS3 box-sizing 属性 有趣的盒模型

浅谈CSS3 box-sizing 属性 有趣的盒模型

从上面两图不难看出在标准模型中,盒模型的宽高只是内容(content)的宽高,

而在IE模型中盒模型的宽高是内容(content)+填充(padding)+边框(border)的总宽高。

css如何设置两种模型

这里用到了CSS3 的属性 box-sizing(默认值:content-box)

/* 标准模型 */ 
 box-sizing:content-box;
  /*IE模型*/
 box-sizing:border-box;

content-box: 这是CSS2.1指定的宽度和高度的行为。指定元素的宽度和高度(最小/最大属性)适用于box的宽度和高度。元素的填充和边框布局和绘制指定宽度和高度除外

border-box: 指定宽度和高度(最小/最大属性)确定元素边框box。也就是说,对元素指定宽度和高度包括padding和border的指定。内容的宽度和高度减去各自双方该边框和填充的宽度从指定的"宽度"和"高度"属性计算

测试参考案例

理想中的效果和代码如下图:

浅谈CSS3 box-sizing 属性 有趣的盒模型

.input { width: 146px; height: 36px; line-height: 36px; background: transparent; border: 2px solid #0D349A; color: #bdbdbd; padding-left: 10px; padding-right: 30px; font-size: 14px;
box-sizing:content-box;(默认的可不写)}

浅谈CSS3 box-sizing 属性 有趣的盒模型

应用在有用 bootstrap框架 的项目中发现bootstrap.min.css 样式里默认box-sizing: border-box; 会干扰搜索框的宽高

* { -webkit-box-sizing: border-box; 
-moz-box-sizing: border-box;
 box-sizing: border-box;}

这个属性导致页面出现的样子:

浅谈CSS3 box-sizing 属性 有趣的盒模型

.input { width: 146px; height:
 36px;
 line-height: 36px; 
background: transparent; 
border: 2px solid #0D349A;
 color: #bdbdbd; padding-left: 10px;
 padding-right: 30px; 
font-size: 14px; box-sizing:border-box;}

浅谈CSS3 box-sizing 属性 有趣的盒模型

这个时候想要实现理想中的效果必须把样式调整成:

.input { width: 190px;
 height: 40px; line-height: 
40px; background: transparent; 
border: 2px solid #0D349A;
 color: #bdbdbd; padding-left: 10px; 
padding-right: 30px;
 font-size: 14px; 
box-sizing:border-box;}

PS技巧: 当一个容器宽度定义为 width:100%; 之后,如果再增加 padding 或者 border 则会溢出父容器,是向外扩张的

如果使用该样式,指定为box-sizing: border-box; 则 padding 和 border 就不会再溢出,而是向内收缩的,这个效果感觉非常实用的

总结

以上所述是小编给大家介绍的浅谈CSS3 box-sizing 属性 有趣的盒模型 ,希望对大家有所帮助,如果大家有任何iwen欢迎给我留言,小编会及时回复大家的!

HTML / CSS 相关文章推荐
CSS中的字体大小设置属性总结
May 24 HTML / CSS
用css3写出气球样式的示例代码
Sep 11 HTML / CSS
详解canvas drawImage()方法绘制图片不显示的问题
Oct 08 HTML / CSS
在HTML5 canvas里用卷积核进行图像处理的方法
May 02 HTML / CSS
网易微博Web App用HTML5开发的过程介绍
Jun 13 HTML / CSS
html5的websockets全双工通信详解学习示例
Feb 26 HTML / CSS
html5+svg学习指南之SVG基础知识
Dec 17 HTML / CSS
H5调用相机拍照并压缩图片的实例代码
Jul 20 HTML / CSS
详解canvas绘制网络字体几种方法
Aug 27 HTML / CSS
使用数据结构给女朋友写个Html5走迷宫游戏
Nov 26 HTML / CSS
Html5获取高德地图定位天气的方法
Dec 26 HTML / CSS
Canvas 帧动画吃苹果小游戏
Aug 05 HTML / CSS
CSS3 3D酷炫立方体变换动画的实现
Mar 26 #HTML / CSS
CSS3之2D与3D变换的实现方法
Jan 28 #HTML / CSS
CSS3移动端vw+rem不依赖JS实现响应式布局的方法
Jan 23 #HTML / CSS
用CSS3和table标签实现一个圆形轨迹的动画的示例代码
Jan 17 #HTML / CSS
简单几步用纯CSS3实现3D翻转效果
Jan 17 #HTML / CSS
css3实现3D文本悬停改变效果的示例代码
Jan 16 #HTML / CSS
css3实现元素环绕中心点布局的方法示例
Jan 15 #HTML / CSS
You might like
详解php中的implements 使用
2017/06/13 PHP
javascript中的startWith和endWith的几种实现方法
2013/05/07 Javascript
jQuery获取iframe的document对象的方法
2014/10/10 Javascript
javascript实现的右下角弹窗实例
2015/04/24 Javascript
JavaScript+CSS实现仿Mootools竖排弹性动画菜单效果
2015/10/14 Javascript
Node.js实现JS文件合并小工具
2016/02/02 Javascript
全面解析Bootstrap中transition、affix的使用方法
2016/05/30 Javascript
json的使用小结
2016/06/08 Javascript
javascript的document中的动态添加标签实现方法
2016/10/24 Javascript
详谈for循环里面的break和continue语句
2017/07/20 Javascript
基于 Vue 的树形选择组件的示例代码
2017/08/18 Javascript
JS 中document.write()的用法和清空的原因浅析
2017/12/04 Javascript
Vue的土著指令和自定义指令实例详解
2018/02/04 Javascript
jQuery简单实现的HTML页面文本框模糊匹配查询功能完整示例
2018/05/09 jQuery
vue侧边栏动态生成下级菜单的方法
2018/09/07 Javascript
vue axios post发送复杂对象问题
2019/06/04 Javascript
three.js欧拉角和四元数的使用方法
2020/07/26 Javascript
[02:10]2018DOTA2亚洲邀请赛赛前采访-Liquid
2018/04/03 DOTA
[55:45]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第三场 8.24
2019/09/10 DOTA
python实现2048小游戏
2015/03/30 Python
python爬取51job中hr的邮箱
2016/05/14 Python
python队列通信:rabbitMQ的使用(实例讲解)
2017/12/22 Python
python实现简单淘宝秒杀功能
2018/05/03 Python
python爱心表白 每天都是浪漫七夕!
2018/08/18 Python
解决pycharm运行出错,代码正确结果不显示的问题
2018/11/30 Python
python3.5安装python3-tk详解
2019/04/26 Python
Scrapy框架实现的登录网站操作示例
2020/02/06 Python
美国面料纺织品商城:Fabric.com
2017/06/28 全球购物
美国最大的家庭鞋类零售商之一:Shoe Carnival
2017/10/06 全球购物
巴基斯坦购物网站:Goto
2019/03/11 全球购物
应届毕业生个人求职自荐信
2014/01/06 职场文书
财务会计毕业生个人求职信
2014/02/03 职场文书
优秀辅导员事迹材料
2014/02/16 职场文书
教师党员公开承诺书
2014/03/25 职场文书
学历公证委托书
2014/04/09 职场文书
如何书写民事调解协议书?
2019/06/25 职场文书