浅谈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 相关文章推荐
纯CSS3实现自定义Tooltip边框涂鸦风格的教程
Nov 05 HTML / CSS
纯CSS3实现8组超炫酷鼠标滑过图片动画
Mar 16 HTML / CSS
CSS3色彩模式有哪些?CSS3 HSL色彩模式的定义
Apr 26 HTML / CSS
CSS3 按钮边框动画的实现
Nov 12 HTML / CSS
HTML5 与 XHTML2
Oct 17 HTML / CSS
HTML5 Web存储方式的localStorage和sessionStorage进行数据本地存储案例应用
Dec 09 HTML / CSS
HTML5 UTF-8 中文乱码的解决方法
Nov 18 HTML / CSS
html5定位并在百度地图上显示的示例
Apr 27 HTML / CSS
HTML5实现预览本地图片
Feb 17 HTML / CSS
用html5绘制折线图的实例代码
Mar 25 HTML / CSS
HTML5超炫酷粒子效果的进度条的实现示例
Aug 23 HTML / CSS
CSS实现两列布局的N种方法
Aug 02 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中instanceof 与 is_a()区别分析
2015/03/03 PHP
PHP使用Memcache时模拟命名空间及缓存失效问题的解决
2016/02/27 PHP
laravel手动创建数组分页的实现代码
2018/06/07 PHP
js 复制或插入Html的实现方法小结
2010/05/19 Javascript
JavaScript String.replace函数参数实例说明
2013/06/06 Javascript
提取字符串中年月日的函数代码
2013/11/05 Javascript
js函数与php函数的区别实例浅析
2015/01/12 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
在 Express 中使用模板引擎
2015/12/10 Javascript
jQuery的内容过滤选择器学习教程
2016/04/18 Javascript
Angular.js 实现数字转换汉字实例代码
2016/07/14 Javascript
Angular 4依赖注入学习教程之ValueProvider的使用(七)
2017/06/04 Javascript
windows系统下更新nodejs版本的方案
2017/11/24 NodeJs
layer弹出层 iframe层去掉滚动条的实例代码
2018/08/17 Javascript
vue强制刷新组件的方法示例
2019/02/28 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
2019/09/14 Javascript
解决Layui 表格自适应高度的问题
2019/11/15 Javascript
jQuery实现容器间的元素拖拽功能
2020/12/01 jQuery
python实现指定字符串补全空格的方法
2015/04/30 Python
Python字典简介以及用法详解
2016/11/15 Python
Python学习小技巧之列表项的拼接
2017/05/20 Python
python 拼接文件路径的方法
2018/10/23 Python
详解python的四种内置数据结构
2019/03/19 Python
Python面向对象思想与应用入门教程【类与对象】
2019/04/12 Python
面向新手解析python Beautiful Soup基本用法
2020/07/11 Python
Python中logging日志记录到文件及自动分割的操作代码
2020/08/05 Python
一款纯css3实现的竖形二级导航的实例教程
2014/12/11 HTML / CSS
HTML5印章绘制电子签章图片(中文英文椭圆章、中文英文椭圆印章)
2019/06/03 HTML / CSS
幼儿教师思想汇报
2014/01/10 职场文书
教师业务学习制度
2014/01/25 职场文书
优质服务活动实施方案
2014/05/02 职场文书
公司授权委托书格式样本
2014/10/01 职场文书
2014业务员年终工作总结
2014/12/09 职场文书
2015年小学数学教师个人工作总结
2015/05/25 职场文书
2015年员工试用期工作总结
2015/05/28 职场文书
PL350与SW11的比较
2021/04/22 无线电