博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
弹性盒模型------新布局的宠儿
阅读量:4594 次
发布时间:2019-06-09

本文共 1222 字,大约阅读时间需要 4 分钟。

盒模型有两种,一种是W3C标准盒模型,一种是怪异盒模型.

W3C盒模型的宽度和高度,指的是内容的宽度和高度

怪异盒模型的宽度和高度,指的是内容+padding+border

怪异盒模型适用IE6及以前的版本,通过去掉docutype来开启怪异模式

这个问题在前端面试中出现的频率很高,为css3中的重中之重

弹性盒模型应用范围很广,web移动开发以及布局都有极其重要的地位

首先来看下面一段代码

HTML代码如下

<div id="main">

    <div id="div1">div1</div>
    <div id="div2">div2</div>
    <div id="div3">div3</div>
</div>

css代码如下

#div1,#div2,#div3{

    height: 300px;
}
#div1{
    background: #ff0000;
}
#div2{
    background: #00ff00;
}
#div3{
    background: #ffff00;
}

此时运行的结果显示

 

然后在css样式加上

#main{

    display: -webkit-box;
}

运行结果如图

 

div是块级元素,没加-webkit-box,会以块级元素方式排列.当我们在父元素上加-webkit-box,会变成以上这种方式排列,也可以通过-webkit-box-orient:vertical来实现块级元素排列方式

CSS部分样式改变如下

#main{

    display: -webkit-box;
}
#div1,#div2,#div3{
    height: 300px;
    -webkit-box-flex: 1;
}

运行结果为

 

当改变浏览器大小时

 

改变每一个div-webkit-box-flex的值

#main{

    display: -webkit-box;
}
#div1,#div2,#div3{
    height: 300px;
    /*-webkit-box-flex: 1;*/
}
#div1{
    background: #ff0000;
    -webkit-box-flex: 1;
}
#div2{
    background: #00ff00;
    -webkit-box-flex: 2;
}
#div3{
    background: #ffff00;
    -webkit-box-flex: 3;
}

运行如图所示

 

所以,-webkit-box-flex是将父元素动态分成几份,即使改变浏览器的大小,所占份数也不会改变

CSS代码改变如下

#main{

    display: -webkit-box;
    margin-left: 200px;
}

运行结果

 

由此可知,弹性盒模型是将父元素剩余空间分份,将父元素的剩余空间进行动态分布.

转载于:https://www.cnblogs.com/yuqing-o605/p/6433357.html

你可能感兴趣的文章
pb开发的客户端,使用oracle 9i客户端 提示oci.dll could not be loaded
查看>>
wordpress调用指定post type文章怎么操作
查看>>
magento开发手册之目录结构
查看>>
换个红圈1微信头像恶搞一下好友
查看>>
javascript学习_廖大_20170218
查看>>
bzoj2038: [2009国家集训队]小Z的袜子(hose) 莫队
查看>>
火车头采集基本使用
查看>>
MYSQL中插入数据以及修改数据的部分方法
查看>>
unity中遍历动画得到动画名字和动画数量
查看>>
调整WebLogic的时间
查看>>
Linux学习笔记总结--配置iptables防火墙
查看>>
win10 安装mysql
查看>>
SQL文 Update From 写法
查看>>
pyc文件的本质
查看>>
洛谷 - P2602 - 数字计数 - 数位dp
查看>>
android 环境配置 与 运行错误
查看>>
POJ 2653
查看>>
余承东:未来5年中国大部分智能手机厂商消失
查看>>
Android中个人推崇的数据库使用方式
查看>>
关于H.264 x264 h264 AVC1
查看>>