display:flex和display:box布局浏览器兼容性分析
display:flex和display:box都可用于弹性布局,不同的是display:box是2009年的命名,已经过时,用的时候需要加上前缀;display:flex是2012年之后的命名。在实际的测试中display:flex不能完全的替代display:box。display:flex的浏览器兼容性比较麻烦。
1.关于display:flex
对于响应式布局,使用flex很方便,但是它的兼容性也是一个值得考虑的问题。

<div class="container">
<div class="item" style="background:#f00"></div>
<div class="item" style="background:#000"></div>
<div class="item" style="background:#08c"></div>
<div class="item" style="background:#a00"></div>
<div class="item" style="background:#0f0"></div>
</div>

|
1
2
3
4
5
6
7
8
9
10
11
|
.container{ display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:center; margin:0 auto; width:100%; height:200px; background:#eee; } .item{flex:1;height:200px;} |
对于PC端,一般chrome(测试版本:49.0.2623.110 m)和火狐(测试版本:49.0.2)都能很好地支持。ie不支持,显示的是顺序排列下来的宽度100%的模块。
对于移动端:
(1)上述代码iOS的原生safari浏览器是支持的;UC浏览器支持的很好;微信浏览器不支持(测试机型:苹果4s)
(2)安卓的原生浏览器不支持,能够正常显示模块,文档流依次排列;UC浏览器不支持,显示为空白;微信浏览器不支持(测试机型:华为荣耀6 Plus,Android4.4.2)
2.关于display:box
|
1
2
3
4
5
|
<div class="container"> <div class="item item1" style="background:#f00"></div> <div class="item item2" style="background:#000"></div> <div class="item item3" style="background:#08c"></div> </div> |
|
1
2
3
4
5
6
7
8
9
10
11
|
.container{ display:-moz-box; display:-webkit-box; display:box; width:100%; height:200px; }.item{height:200px;}.item1{-moz-box-flex:1;-webkit-box-flex:1;box-flex:1;}.item2{-moz-box-flex:2;-webkit-box-flex:2;box-flex:2;}.item3{-moz-box-flex:3;-webkit-box-flex:3;box-flex:3;} |
PC端:chrome(测试版本:49.0.2623.110 m)和火狐(测试版本:49.0.2)都能很好地支持。ie不支持,显示的是顺序排列下来的宽度100%的模块。
移动端:
(1)上述代码iOS的原生safari浏览器是支持的;UC浏览器支持的很好(测试机型:苹果4s)
(2)安卓的原生浏览器支持;UC浏览器不支持,显示为空白(测试机型:华为荣耀6 Plus:Android4.4.2)
UC浏览器是支持display:box;在我的手机上之所以没显示,排查了一下原因,是因为页面缺少meta,<meta name="viewport" content="width=device-width" />加上之后就可以正常显示了。具体是为什么只有我的手机上非要加meta,我也不清楚--_--
总的来说,不考虑IE浏览器的话,PC端上使用哪个都可以,一般使用display:flex;移动端的安卓的UC只支持display:box,iOS的UCdisplay:box和display:flex两个都支持。
3.兼容浏览器的写法
|
1
2
3
4
5
6
7
8
|
.container{display: -webkit-box; /* Chrome 4+, Safari 3.1, iOS Safari 3.2+ */display: -moz-box; /* Firefox 17- */display: -webkit-flex; /* Chrome 21+, Safari 6.1+, iOS Safari 7+, Opera 15/16 */display: -moz-flex; /* Firefox 18+ */display: -ms-flexbox; /* IE 10 */display: flex; /* Chrome 29+, Firefox 22+, IE 11+, Opera 12.1/17/18, Android 4.4+ */} |
display:flex和display:box布局浏览器兼容性分析的更多相关文章
- 使用display:flex;实现两栏布局和三栏布局
一.使用display:flex;实现两栏布局 body,div{margin:0px;padding:0px;} .flex-container{display:flex;height:300px; ...
- CSS3 display:flex和display:box有什么区别?
**区别**,仅是各阶段草案命名.- W3C 2009年第1次草案:[display:box;](https://www.w3.org/TR/2009/WD-css3-flexbox-20090723 ...
- 1.display:flex布局笔记
/*display:flex布局方式主要运用于垂直居中的效果*/ 一.Flex译为Flexible Box(弹性盒子),任何一个容器都可以指定为Flex布局 注:设置为Flex布局之后,子元素的flo ...
- display:flex 布局教程,弹性布局!
display:flex 布局教程 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现. ...
- css display:flex 属性
一:display:flex 布局 display:flex 是一种布局方式.它即可以应用于容器中,也可以应用于行内元素.是W3C提出的一种新的方案,可以简便.完整.响应式地实现各种页面布局.目前,它 ...
- 浅谈display:flex
display:flex 意思是弹性布局 首先flex的出现是为了解决哪些问题呢? 一.页面行排列布局 像此图左右两个div一排显示 可以用浮动的布局方式 html部分 css部分 这种布局有两个缺点 ...
- flex的使用以及布局
1.添加flex属性后的区别 <style> body{ font-size:35px; } .flex-box{ display:flex; display: -webkit-flex; ...
- flex的使用以及布局 转载
转 : http://www.cnblogs.com/waisonlong/p/6055020.html flex的使用以及布局 1.添加flex属性后的区别 1 2 3 4 5 6 7 8 9 ...
- 布局神器display:flex
2009年,W3C提出了一种新的方案--Flex布局,可以简便.完整.响应式地实现各种页面布局.目前已得到所有现在浏览器的支持. flex浏览器支持 一.Flex布局是什么? Flex是Flexi ...
随机推荐
- [Functional Programming ADT] Debug a Functional JavaScript composeK Flow
When using ADTs in our code base, it can be difficult to use common debugging tools like watches and ...
- Office 如何复印身份证正反面到一张纸上
先把身份证任意一面放到打印机扫描的一侧(不要放到正中间) 正面扫描复印好之后,身份证翻面,还放在原来的位置 纸张拿出来之后,把已经有图案的放在上面,空白的留在下面,接着扫描 最后效果如下 ...
- App服务端架构变迁
随着移动互联网时代的到来,移动技术也随之飞速发展.如今,App已然成为绝大多数互联网企业用来获取用户的核心渠道.以往以PC为主要承载平台的各业务线,源源不断集成加入到移动项目中来,原本以产品为中心快速 ...
- CSS3文本溢出
text-overflow: text-overflow:clip | ellipsis; clip:剪切多余的文字. ellipsis:文本溢出时显示省略标记. 要实现文本溢出剪切显示省略标记,还需 ...
- Docker exec与Docker attach
转载博客地址:http://blog.csdn.net/halcyonbaby 新浪微博:@寻觅神迹 内容系本人学习.研究和总结,如有雷同,实属荣幸! ================== Docke ...
- 自闭合标签-主动闭合标签-meta-link标签
<!DOCTYPE html><!--规定标准的html--><!--一个页在只有一对html标签--><!--标签的属性 指定英文--><htm ...
- 采集Snoopy.class.php
<?php /************************************************* Snoopy - the PHP net client Author: Mont ...
- asp.net 抓取新闻
前台页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...
- 飞机3D轨迹绘制(经度-纬度-高度)
使用Python绘制 #绘制三维直线图,将飞机飞行的航迹用(经度,纬度和高度)来描述 #******************************************************** ...
- Android studio使用心得(二)— 打包签名apk发布
1.—–Android Studio菜单 Build->Generate Signed APK 2.——Create new.. 3.——-跟eclipse里面一样,添加keystore 信 ...