关于display: box 和 box-flex

这两天做手机项目,使用到这个css3新属性。现在还不为所有浏览器支持,所以使用的时候要加上前缀。使用方法见下面:

html代码:

<div class="s-indLine">
            <div class="s-indNav s-indIntro">
                <span class="s-icon"></span>
                <p>品牌介绍</p>
            </div>
            <div class="s-indNav s-indInfo">
                <span class="s-icon"></span>
                <p>优惠信息</p>
            </div>
        </div>
        <div class="s-indLine">
            <div class="s-indNav s-indShop">
                <span class="s-icon"></span>
                <p>门店查找</p>
            </div>
            <div class="s-indNav s-indGoods">
                <span class="s-icon"></span>
                <p>热卖商品</p>
            </div>
        </div>

css代码:

.s-indLine{   
    display: -webkit-box;
    display: -moz-box;
    display: box;
    margin-bottom: 10px;
    -moz-box-orient:horizontal;
    -webkit-box-orient:horizontal;
    box-orient:horizontal;
}
.s-indLine .s-indNav{
    -webkit-box-flex: 5;
    -moz-box-flex: 5;
    box-flex: 5;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 10px;
    color: #ffffff;
    text-align: center;
    height: 105px;
    padding: 15px 0px;
    font-size: 1.5rem;
}
.s-indLine .s-indNav:first-child{
    margin-right: 10px;
}
.s-indIntro{
    background: #4eb566;
}
.s-indInfo{
    background: #ffa422;
}
.s-indShop{
    background: #7788f2;
}
.s-indGoods{
    background: #ef604d;
}
.s-indLine .s-indNav .s-icon, .s-groupNav .s-icon{
    width: 50px;
    height: 50px;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center;
}
.s-indIntro .s-icon{
    background-image: url("group.png");
}
.s-indInfo .s-icon{
    background-image: url("group.png");
}
.s-indShop .s-icon{
    background-image: url("group.png");
}
.s-indGoods .s-icon{
    background-image: url("group.png");
}

可以不给子元素设置box-flex值,直接使用width代替,也可以设置margin 和 padding 值。得到的效果图如下:

    在chrome或者手机其他的以-webkit为内核的浏览器上调试时,上面的代码是没有问题的,但是在火狐下面,会出现问题,如下图所示:

这地方解决办法,必须给父元素添加width样式,例如 width: 100%; 即可。

此外在火狐上还有一个问题,上面说到可以给子元素不设置box-flex,而是设置width,但是在火狐上不能识别width,而是必须设置box-flex。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索display
, 火狐
, background
, box
, width
background-image
flex和box的区别、webkitbox和flex、boxflex和flex、display flex和box、flexbox,以便于您获取更多的相关知识。

时间: 2024-09-12 05:45:01

关于display: box 和 box-flex的相关文章

Box 推出 Box Open Source 开源项目

Box今天推出了一项名为Box Open Source的新举措,面向开发者社区分享自主开发的开源工程工具. 今天下午,Box在公司博客中公布了这个项目,该公司首席执行官亚伦·莱维(Aaron Levie)也发布了一则推文宣布这个消息. 在今天举行的一场联合电话采访中,莱维和Box主要技术业务开发者本杰明·范艾维(Benjamin VanEvery)表示,今天共享的是Box工程师多年来一直在开发和使用的工具."所有这些都是我们自己在内部使用的项目,我们非常高兴跟外部人士进行 分享."范艾

CSS魔法堂:重新认识Box Model、IFC、BFC和Collapsing margins

前言   盒子模型作为CSS基础中的基础,曾一度以为掌握了IE和W3C标准下的块级盒子模型即可,但近日在学习行级盒子模型时发现原来当初是如此幼稚可笑.本文尝试全面叙述块级.行级盒子模型的特性.作为近日学习的记录. 何为盒子模型?     盒子模型到底何方神圣居然可以作为CSS的基础?闻名不如见面,上图了喂!   再来张切面图吧!   下面我们以 <div></div> 为栗子. <div></div> 标签被浏览器解析后会生成div元素并添加到documen

c++-为什么这段代码中对象rectangle的各个成员函数输出的值是对的,而box的却都是错的

问题描述 为什么这段代码中对象rectangle的各个成员函数输出的值是对的,而box的却都是错的 #include using namespace std; class rectangle { protected: double length,width,l,w; public: void setlength(); void getlength(); void setwidth(); void getwidth(); double area(); double perimeter(); dou

全球首款Q-NET BOX量子安全移动专网应用设备正式发布

9月27日,国科量子通信网络有限公司(简称"量子网络公司")在"中国量子通信网络与应用论坛暨'Q-NET'新品发布会"上发布了全球首款Q-NET BOX量子安全移动专网应用设备.本次新产品的发布,标志着我国量子通信产业进一步领跑全球,标志着量子通信产业化又迈出坚实一步,进一步确立了量子网络公司在行业的龙头地位.   国科量子通信网络有限公司副总裁王健全发布Q-NET BOX Q-NET BOX是在量子网络公司所构建的量子安全服务使能平台(QSSE)之上所打造的创新应

Ubuntu每日小技巧-Ubuntu One关闭后如何切换到Dropbox或Box云服务

Canonical公司决定关闭Ubuntu One的云服务,你可能正在寻找备份你主机的其他服务器,尽管现在有很多云服务的提供商,但是大服务商中仅有小部分支持包括Ubuntu在内的linux. Dropbox全面支持Ubuntu,它有一个很好的整合了ubuntu桌面系统和其他通知栏的客户端.Box,官方的Box.net也可以通过WebDav协议支持linux. 这里有一段来自Canonical公司关于Ubuntu One的摘录: 从4月2日开始,就不能访问Ubuntu One中的存储或音乐了.Ub

Ubuntu 每日技巧- 自动备份Ubuntu 14.04到Box云存储上

Ubuntu 每日技巧- 自动备份Ubuntu 14.04到Box云存储上 如今你已经升级或者安装了Ubuntu 14.04, 但是还有另外一件保护你的新系统需要做的事情:备份! Ubuntu内置了一个备份工具 Déjà Dup Backup Tool.它允许你备份你的系统并保存在本地或者通过不同的协议保存在远端服务器上. 还有许多其他的工具来备份你的Ubuntu计算机与文件.你可以通过Dropbox 客户端或者其他云服务来自动备份你的重要文档.你也有可能使用UbuntuOne来备份你的机器,但

Flex布局新旧混合写法详解(兼容微信)

flex是个非常好用的属性,如果说有什么可以完全代替 float 和 position ,那么肯定是非它莫属了(虽然现在还有很多不支持 flex 的浏览器).然而国内很多浏览器对 Flex 的支持都不是很好,这里针对微信内置浏览器写了一套兼容写法.下面入正题. 首先还是从两个版本的语法开始讲吧,这里还是假设flex容器为 .box ,子元素为 .item . 旧语法篇 定义容器的display属性 .box{        display: -moz-box; /*Firefox*/      

Flash/Flex学习笔记(41):碰撞检测

碰撞检测基本上可能分为二类:对象与对象的碰撞检测.对象与点的碰撞检测 为了方便测试,先写一个box类(生成一个小矩形) package { import flash.display.Sprite; public class Box extends Sprite { private var w:Number; private var h:Number; private var color:uint; public var vx:Number=0; public var vy:Number=0; p

Flash/Flex学习笔记(56):矩阵变换

先回顾一下Silvelright中的矩阵变换[转]WPF中的MatrixTransform,简单点讲:矩阵变换能改变对象的x,y坐标,x或y方向上的缩放,以及对象在x,y轴上的旋转(扭曲变形) 上面这个是WPF/Silverlight中的3*3变换矩阵,其中X,Y用于改变对象的坐标:M11,M22用于对象在x,y轴上的缩放:而M12,M21用于y轴,x轴上的扭曲.   As3.0中的Matix类跟这个类似: 只不过,这个矩阵旋转了一下(行列互换了),tx,ty仍然是用于坐标的平移:a,d用于x,

前端-display:box box-flex 和 display:flex flex 有什么区别?

问题描述 display:box box-flex 和 display:flex flex 有什么区别? display:box box-flex 和 display:flex flex 有什么区别? 解决方案 CSS3 display:flex和display:box有什么区别?Flex 的 Group Box