css3中的盒子模型
1、示例一
实现左右布局,左侧宽度200px,右侧自适配
代码如下:
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.wrap {
display: -webkit-box;
display: -ms-flexbox;
-webkit-box-orient: horizontal;
} .child {
border: 2px solid black;
-webkit-box-align: center;
margin: 10px;
min-height: 200px;
word-break: break-all; } .w200 {
width: 200px;
} .flex1 {
-webkit-box-flex: 1;
-ms-flex: 1;
}
</style>
</head> <body>
<div class="wrap">
<div class="child w200">200px</div>
<div class="child flex1">右侧内容2</div>
</div>
</body> </html>
说明:
display: -webkit-box; 适用于谷歌浏览器,火狐浏览器,IE Edge
display: -ms-flexbox; 适用于IE10、IE11,我试了IE8,IE9,都支持不了
效果如下:

2、示例二
实现左中右布局,左中右比例为:200px:1:2
代码如下:
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.wrap {
display: -webkit-box;
display: -ms-flexbox;
-webkit-box-orient: horizontal;
} .child {
border: 2px solid black;
-webkit-box-align: center;
margin: 10px;
min-height: 200px;
word-break: break-all; } .w200 {
width: 200px;
} .flex1 {
-webkit-box-flex: 1;
-ms-flex: 1;
} .flex2 {
-webkit-box-flex: 2;
-ms-flex: 2;
}
</style>
</head> <body>
<div class="wrap">
<div class="child w200">200px</div>
<div class="child flex1">中间内容</div>
<div class="child flex2">右侧内容</div>
</div>
</body> </html>
效果如下:

3、示例三
在示例二的基础上,使用-webkit-box-direction修改布局顺序
代码如下(黄色背景为添加的代码):
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.wrap {
display: -webkit-box;
display: -ms-flexbox;
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
} .child {
border: 2px solid black;
-webkit-box-align: center;
margin: 10px;
min-height: 200px;
word-break: break-all; } .w200 {
width: 200px;
} .flex1 {
-webkit-box-flex: 1;
-ms-flex: 1;
} .flex2 {
-webkit-box-flex: 2;
-ms-flex: 2;
}
</style>
</head> <body>
<div class="wrap">
<div class="child w200">200px</div>
<div class="child flex1">中间内容</div>
<div class="child flex2">右侧内容</div>
</div>
</body> </html>
通过指定-webkit-box-direction: reverse;显示顺序为从右到左显示。这个样式即使最新的IE11也是不支持的,在IE Edge浏览器上可以支持。
4、示例四
使用box-ordinal-group定义盒子布局的位置
代码如下:
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.wrap {
display: -webkit-box;
display: -ms-flexbox; /* IE10+ */
-webkit-box-orient:vertical;
} .child {
border: 1px solid black;
margin: 10px;
min-height: 200px;
width: 200px; } .flex1 {
-webkit-box-ordinal-group: 4;
-ms-flex-order:4; /* IE10+ */
} .flex2 {
-webkit-box-ordinal-group: 3;
-ms-flex-order:3; /* IE10+ */
} .flex3 {
-webkit-box-ordinal-group: 2;
-ms-flex-order:2; /* IE10+ */
} .flex4 {
-webkit-box-ordinal-group: 1;
-ms-flex-order:1; /* IE10+ */
}
</style>
</head> <body>
<div class="wrap">
<div class="child flex1"><img src="data:images/img1.png"></div>
<div class="child flex2"><img src="data:images/img2.png"></div>
<div class="child flex3"><img src="data:images/img3.png"></div>
<div class="child flex4"><img src="data:images/img4.png"></div>
</div>
</body> </html>
效果如下:

我本地的图片:

示例五
本示例使用box-orient来指定盒子是横向排列还是竖向排列
使用box-pack来指定子容器在水平轴上的空间分配方式,是居左,居右,还是居中
使用box-align来指定子容器在竖轴上的空间分配方式,是居上,居下,还是居中
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<style>
.wrap {
min-height: 600px;
display: -webkit-box;
display: -ms-flexbox;
-webkit-box-orient:vertical; /* 子容器竖向排列 */
-ms-flex-direction: column; /* 子容器竖向排列,IE10+ */
flex-direction: column; /* 子容器竖向排列,IE10+ */
-webkit-box-pack: center; /* 子容器在水平轴上的空间分配方式,可以是start、end或者center */
-webkit-box-align: center; /* 子容器在竖轴上的空间分配方式,可以是start、end或者center */
-ms-flex-align: center; /* 子容器在竖轴上的空间分配方式,可以是start、end或者center */
-ms-flex-pack:center /* 子容器在水平轴上的空间分配方式,IE10+,可以是start、end或者center */
} .flex {
border: 1px solid black;
margin: 10px;
width: 200px;
}
</style>
<body>
<div class="wrap">
<div class="flex"><img src="data:images/img1.png" ></div>
<div class="flex"><img src="data:images/img2.png" ></div>
</div>
</body>
</html>
效果如下:

css3中的盒子模型的更多相关文章
- css中的盒子模型
css中的盒子模型 css中的盒子模型,有两种,一种是“标准 W3C 盒子模型”,另外一种是IE盒子模型. 1.w3c盒子模型 从图中可以看出:w3c盒子模型的范围包括了:margin,borde ...
- js中的盒子模型
说到盒子模型,你第一时间会想到css盒子模型,css中的盒子模型包括(内容区+内边距+边框).那在js中怎么去获取这些属性值呢?下面一起来学习js中的盒子模型. css样式 body { margin ...
- CSS学习系列1 - CSS中的盒子模型 box model
css中有一个盒子模型的概念. 主要是用来告诉浏览器如何来计算页面元素的宽度和高度, 比如该元素的宽度/高度 是否包括内边距,边框,外边距. 盒子模型有一个属性box-sizing属性来说明是否包括 ...
- CSS中的盒子模型与 box-sizing 属性
盒子模型是css中一个重要的概念,是开发网页必须要用的布局方法.盒子模型有两种,分别是标准 w3c 盒子模型和 ie 盒子模型. 标准 w3c 盒子模型:包括 magin(外边距).border(边框 ...
- css中的盒子模型是什么?
什么是CSS 盒子模型(Box Model) 所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封装周 ...
- CSS中的盒子模型详解
很多人对盒子模型搞晕头了,下面通过一个简单的代码来分析盒子模型的结构! 为了方便方便观看!在第一个div中画了一个表格,并将其尺寸设置成与div内容大小一样!且设置body的margin和paddin ...
- css3中 弹性盒模型布局之box-flex
box-flex:也就是让子容器针对父容器的宽高属性依照一定的规则来划分 Eg: html代码: <div class="wrap"> <div class=&q ...
- CSS3 中弹性盒模型--容器的属性
1.display : flex | inline-flex注意,设为 Flex 布局以后,子元素的float.clear和vertical-align属性 将失效. 2.flex-direction ...
- CSS网页布局:盒子模型
一.盒子模型 标准盒子模型(W3C盒子) 不论是标准盒模型还是IE盒子模型,都有content.padding.border.margin四个部分组成,但从上图也可以看出W3C盒子和IE盒子主要区别在 ...
随机推荐
- java InputStream的使用
package cn.kongxh.io3;import java.io.File ;import java.io.InputStream ;import java.io.FileInputStrea ...
- X509证书信任管理器类的详解
在JSSE中,证书信任管理器类就是实现了接口X509TrustManager的类.我们可以自己实现该接口,让它信任我们指定的证书. 接口X509TrustManager有下述三个公有的方法需要我们实现 ...
- Xinetd超级守护进程
Xinetd超级守护进程 00.什么是xinetd服务 xinetd(extended Internet services daemon), 是新一代网络守护进程服务程序, 又叫超级守护进程. 经常用 ...
- Spring5.0.x SSM项目中Json转换器 的配置
json作为前后端交互的重要手段,在springMVC中有自带的转换器可以免去平时那些繁琐的事情: pom文件添加:spring5.0以上用Jackson2.9以上的版本 <dependency ...
- CentOS 7.2搭建FastDFS 分布式文件系统,实现高可用集群
分布式集群搭建结构 双Tracker 2组Group 轮询存储策略 Keepalived+Nginx高可用 Nginx缓存 4个存储节点 一. 集群规划清单 1.安装清单 软件名称 版本 百度云盘存放 ...
- python基础语法9 生成器,面向对象编程思想,三元表达式,列表生成式,生成器表达式(生成式),匿名函数,内置函数
生成器 1.什么是生成器? 生成的工具. 生成器是一个 "自定义" 的迭代器, 本质上是一个迭代器. 2.如何实现生成器 但凡在函数内部定义了的yield, 调用函数时,函数体代码 ...
- git更换仓库,保留分支,保留提交记录及开发权限
别人推荐的方法都很复杂,这个步骤自己亲自尝试过,非常简单好用. 1.从原地址克隆一份裸版本库,比如原本托管于 GitHub. git clone --bare https://github....(原 ...
- 没有内置小鹤双拼的rime输入法就是差劲
没有内置小鹤双拼的rime输入法就是差劲,还特立独行,搞什么繁体~ 没有内置小鹤双拼的rime输入法就是差劲,还特立独行,搞什么繁体~ 没有内置小鹤双拼的rime输入法就是差劲,还特立独行,搞什么繁体 ...
- xunit.core 控制台输出日志
参考链接: https://www.cnblogs.com/dudu/p/9391959.html http://landcareweb.com/questions/15813/xunit-netbu ...
- Reincarnation HDU - 4622 (后缀自动机)
Reincarnation \[ Time Limit: 3000 ms\quad Memory Limit: 65536 kB \] 题意 给出一个字符串 \(S\),然后给出 \(m\) 次查询, ...