Boostrap入门准备之border box


Posted in Javascript onMay 09, 2016

之前在学习Bootstrap的过程中,遇到各种奇葩的坑,如果在学习bootstrap之前,准备工作先做好,就可以或多或少的避开一些坑。下面小编开始给大家介绍border-box这个属性的知识。

在Boostrap自带的css文件:boostrap.css中,有这样一段代码:

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

这意味着在写代码时,这个属性将无处不在。那这个box-sizing:boder-box究竟是什么鬼呢?让我们先来看看一段很普通的代码:

<div class="outer" style="width:500px; height:500px; padding:100px; border:1px solid #000; background-color: yellow; "> 
<div class="inner" style="width:100%; height:100%; background-color:pink;"></div> 
</div>

运行代码得出:outer的高度为702px,宽度为702px,inner的宽度为500px,高度为500px;这里大家应该都没什么疑问吧,我们现在看看另外一段代码:

* { 
-webkit-box-sizing: border-box; 
-moz-box-sizing: border-box; 
box-sizing: border-box; 
} 
<div class="outer" style="width:500px; height:500px; padding:100px; border:1px solid #000; background-color: yellow; "> 
<div class="inner" style="width:100%; height:100%; background-color:pink;"></div> 
</div>

这段代码其实就是头两段代码的相加,可以简单的理解为现在是在Boostrap的框架中开始写代码,代码运行的结果为:outer的宽度为500px,高度为500px;inner的宽高为298px;

导致这样的结果的原因是:box-sizing:border-box使得元素的宽高不会受padding和border的影响,如上面的代码,即使outer有padding,border,但是padding和border都不会影响outer的宽高,outer的宽高还是500px;但是padding和border跑哪里去了?答案:跑到里面去了!打开浏览器的调试工具,看outer的样式详情:

我们可以明显的看到,padding和border都是有效的,只是它们占据了outer的内部空间,由于padding:100px占据了outer的200px宽高值,border占据了2px的宽高值,所以inner只能获得298px的宽高值。

如果大家有ie下的网页开发经验的话,就会发现,box-sizing:border-box就是低版本ie的怪异模式。

以上所述是小编给大家介绍的Boostrap入门准备之border box的相关知识,大家都学会了吗,如果有疑问欢迎给我留言,小编会及时回复大家的。同时也非常感谢大家对三水点靠木网站的支持!

下面给大家介绍box-sizing border-box 的理解

-webkit-box-sizing: border-box; 则div 设置的宽高将包含 边框及 padding

<!DOCTYPE html>
<html>
<head>
<title>box-sizing</title>
<style type="text/css">
.testdiv{
padding: 10px;;
width:100px;
border: 10px solid
}
</style>
</head>
<body >
<div class="testdiv" > 普通</div>
<div class="testdiv" style=" -webkit-box-sizing: border-box;">
特殊
</div>
</body>
</html>
Javascript 相关文章推荐
List the Codec Files on a Computer
Jun 18 Javascript
基于PHP+Jquery制作的可编辑的表格的代码
Apr 10 Javascript
jquery Mobile入门—外部链接切换示例代码
Jan 08 Javascript
Jquery绑定事件(bind和live的区别介绍)
Aug 23 Javascript
javascript代码运行不出来执行错误的可能情况整理
Oct 18 Javascript
HTML5+setCutomValidity()函数验证表单实例分享
Apr 24 Javascript
同步文本框内容JS代码实现
Aug 04 Javascript
JavaScrip关于创建常量的知识点
Dec 07 Javascript
js实现关闭网页出现是否离开提示
Dec 07 Javascript
vscode下的vue文件格式化问题
Nov 28 Javascript
jQuery HTML css()方法与css类实例详解
May 20 jQuery
jQuery实现影院选座订座效果
Apr 13 jQuery
CKEditor无法验证的解决方案(js验证+jQuery Validate验证)
May 09 #Javascript
jQuery代码实现图片墙自动+手动淡入淡出切换效果
May 09 #Javascript
jQuery绑定事件的几种实现方式
May 09 #Javascript
jquery实现左右无缝轮播图
Jul 31 #Javascript
node.js从数据库获取数据
May 08 #Javascript
JavaScript希尔排序、快速排序、归并排序算法
May 08 #Javascript
基于jquery实现最简单的选项卡切换效果
May 08 #Javascript
You might like
PHP 开源AJAX框架14种
2009/08/24 PHP
php常用ODBC函数集(详细)
2013/06/24 PHP
PHP 数组遍历foreach语法结构及实例
2016/06/13 PHP
Yii2主题(Theme)用法详解
2016/07/23 PHP
YII框架常用技巧总结
2019/04/27 PHP
PHP实现给定一列字符,生成指定长度的所有可能组合示例
2019/06/22 PHP
jQuery CSS()方法改变现有的CSS样式表
2014/09/09 Javascript
跟我学习javascript的var预解析与函数声明提升
2015/11/16 Javascript
详解Javascript模板引擎mustache.js
2016/01/20 Javascript
jQuery动态添加与删除tr行实例代码
2016/10/18 Javascript
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
2017/05/20 jQuery
微信小程序 自定义Toast实例代码
2017/06/12 Javascript
关于Vue的路由权限管理的示例代码
2018/03/06 Javascript
Webpack devServer中的 proxy 实现跨域的解决
2018/06/15 Javascript
Vue表单demo v-model双向绑定问题
2018/06/29 Javascript
vue移动端屏幕适配详解
2019/04/30 Javascript
原生JavaScript实现随机点名表
2021/01/14 Javascript
[00:30]塑造者的传承礼包-戴泽“暗影之焰”套装展示视频
2014/04/04 DOTA
Python比较两个图片相似度的方法
2015/03/13 Python
对pandas里的loc并列条件索引的实例讲解
2018/11/15 Python
python快排算法详解
2019/03/04 Python
opencv中图像叠加/图像融合/按位操作的实现
2020/04/01 Python
如何使用PyCharm将代码上传到GitHub上(图文详解)
2020/04/27 Python
洲际酒店集团大中华区:IHG中国
2016/08/17 全球购物
耐克奥地利官网:Nike奥地利
2019/08/16 全球购物
Python文件操作的面试题
2013/06/22 面试题
会计系个人求职信范文分享
2013/12/20 职场文书
白酒业务员岗位职责
2013/12/27 职场文书
社会保险接收函
2014/01/12 职场文书
经销商订货会主持词
2014/03/27 职场文书
中层干部培训方案
2014/06/16 职场文书
暑假安全教育广播稿
2014/09/10 职场文书
车辆年审委托书范本
2014/09/18 职场文书
统计员岗位职责
2015/02/11 职场文书
党小组推荐意见
2015/06/02 职场文书
mysql知识点整理
2021/04/05 MySQL