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 相关文章推荐
用jQuery实现检测浏览器及版本的脚本代码
Jan 22 Javascript
javascript 兼容鼠标滚轮事件
Apr 07 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
Jan 30 Javascript
jQuery cdn使用介绍
May 08 Javascript
jQuery实现点击文本框弹出热门标签的提示效果
Nov 17 Javascript
多个jQuery版本共存的处理方案
Mar 17 Javascript
JavaScript中instanceof运算符的使用示例
Jun 08 Javascript
基于Bootstrap的UI扩展 StyleBootstrap
Jun 17 Javascript
jQuery输入框密码的显示隐藏【代码分享】
Apr 29 jQuery
Bootstrap Tree View简单而优雅的树结构组件实例解析
Jun 15 Javascript
react实现菜单权限控制的方法
Dec 11 Javascript
解决vue中使用Axios调用接口时出现的ie数据处理问题
Aug 13 Javascript
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
967 个函式
2006/10/09 PHP
JavaScript 高级语法介绍
2009/06/15 Javascript
js中巧用cssText属性批量操作样式
2011/03/13 Javascript
jquery 查找iframe父级页面元素的实现代码
2011/08/28 Javascript
jQuery mobile 移动web(4)
2015/12/20 Javascript
谈一谈javascript中继承的多种方式
2016/02/19 Javascript
jQuery解析与处理服务器端返回xml格式数据的方法详解
2016/07/04 Javascript
AngularJs入门教程之环境搭建+创建应用示例
2016/11/01 Javascript
最细致的vue.js基础语法 值得收藏!
2016/11/03 Javascript
微信小程序 页面传值详解
2017/03/10 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
详细AngularJs4的图片剪裁组件的实例
2017/07/12 Javascript
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
Angular4学习教程之DOM属性绑定详解
2018/01/04 Javascript
jQuery实现的淡入淡出与滑入滑出效果示例
2018/04/18 jQuery
[00:58]他们到底在电话里听到了什么?
2017/11/21 DOTA
[00:31]DOTA2荣耀之路7:Miracle-空血无敌斩
2018/05/31 DOTA
Python实现的朴素贝叶斯分类器示例
2018/01/06 Python
基于python的图片修复程序(实现水印去除)
2018/06/04 Python
一篇文章了解Python中常见的序列化操作
2019/06/20 Python
Django实现发送邮件找回密码功能
2019/08/12 Python
写给女生的道歉信
2014/01/08 职场文书
大学生创业感言
2014/01/25 职场文书
艺人经纪人岗位职责
2014/04/15 职场文书
项目建议书范文
2014/05/12 职场文书
文明家庭先进事迹材料
2014/05/14 职场文书
公司会议策划方案
2014/05/17 职场文书
质量承诺书怎么写
2014/05/24 职场文书
工地宣传标语
2014/06/18 职场文书
开展党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
解除同居协议书
2015/01/29 职场文书
医院党建工作总结2015
2015/05/26 职场文书
公司规章制度范本
2015/08/03 职场文书
护士旷工检讨书
2015/08/15 职场文书
浅谈Redis位图(Bitmap)及Redis二进制中的问题
2021/07/15 Redis
Python数据可视化之Seaborn的安装及使用
2022/04/19 Python