css3手册弹性布局(css3的弹性框模型是什么意思)

2024-07-03 23:44:49 57

css3手册弹性布局(css3的弹性框模型是什么意思)

本文目录

css3的弹性框模型是什么意思

  弹性盒模型决定一个盒子在其他盒子中的分布方式以及如何处理可用的空间。这与XUL(火狐使用的用户交互语言)相似,其它语言也使用相同的盒模型,如XAML 、GladeXML。

  使用该模型,可以很轻松的创建自适应浏览器窗口的流动布局或自适应字体大小的弹性布局。例子使用以下的HTML代码:

《body》《div id=“box1“》1《/div》《div id=“box2“》2《/div》《div id=“box3“》3《/div》《/body》

  传统的盒模型基于HTML流在垂直方向上排列盒子。使用弹性盒模型可以规定特定的顺序,也可以反转之。要开启弹性盒模型,只需设置拥有子盒子的盒子的display的属性值为box(或inline-box)即可。

  display: box;

  水平或垂直分布

  “box-orient”定义分布的坐标轴:vertical和horizional。这两个值定义盒子如何显示

  body{display: box;box-orient: horizontal;}

  反向分布

  “box-direction”可以设置盒子出现的顺序。默认情况下,只需定义分布坐标轴——box随html流分布。如果为水平坐标轴,则从左到 右分布;垂直坐标轴则从上到下分布。定义“box-direction”的属性值为“reverse”,则反转盒子的排列顺序。

  body {display: box;box-orient: vertical;box-direction: reverse;}

  具体分布

  属性“box-ordinal-group”定义盒子分布的顺序。可以随意的控制其分布顺序。这些组以一个从“1”开始的数字定义,盒模型将首先分布这些组,所有这些盒子将在每个组中。分布将从小到大排列。

  body {display: box;box-orient: vertical;box-direction : reverse;}#box1 {box-ordinal-group: 2;}#box2 {box-ordinal-group: 2;}#box3 {box-ordinal-group: 1;}

  盒子尺寸

  默认情况下,盒子并不具有弹性,如果box-flex的属性值至少为1时,则变得富有弹性。

  如果盒子不具有弹性,它将尽可能的宽使其内容可见,且没有任何溢出,其大小由“width”和“height”来决定(或min-height、min-width、max-width、max-height)。

  如果盒子是弹性的,其大小将按下面的方式计算:

  具体的大小声明(width、height、min-width、min-height、max-width、max-height);

  父盒子的大小和所有余下的可利用的内部空间

  如果盒子没有任何大小声明,那么其大小将完全取决于父box的大小。即:盒子的大小等于父级盒子的大小乘以其box-flex在所有子盒子box-flex总和中的百分比(子盒子的大小=父盒子的大小*子盒子的box-flex/所有子盒子的box-flex值的和)。

  如果一个或更多的盒子有一个具体的大小声明,那么其大小将计算其中,余下的弹性盒子将按照上面的原则分享剩下的可利用空间。

  看看下面的例子,理解起来更容易。

  所有盒子都是弹性的

  下面的例子中,box1的大小为box2的两倍,box2与box3大小一样。看起来好像是用百分比定义盒子的大小,但是有一个区别:使用弹性盒模型,增加一个盒子,无须重新计算其大小。

  body {display: box;box-orient: horizontal;}#box1 {box-flex: 2;}#box2 {box-flex: 1;}#box3 {box-flex: 1;}

  一些盒子有固定大小

  下面的例子中,box3并不是弹性的,宽度为160px;这样box1和box2将有240px的可利用空间。因此,box1的宽度为160px(240*2/3),box2的宽度为80px(240*1/3)。

  body {display: box;box-orient: horizontal;width: 400px;}#box1 {box-flex: 2;}#box2 {box-flex: 1;}#box3 {width: 160px;}

  溢出管理

  因为是弹性盒子、非弹性盒子混排,有可能所有盒子的尺寸大于或小于父盒子的尺寸。这样就有可能空间太多或空间不足。

  空间太多如何处理

  可利用空间的分布取决于两个属性值:box-align 和 box-pack。

  属性“box-pack”管理水平方向上的空间分布,有以下四个可能属性:start、end、 justify、 or center。

  start 所有盒子在父盒子的左侧,余下的空间在右侧;

  end所有盒子在父盒子的右侧,余下的空间在左侧;

  justify 余下的空间在盒子间平均分配;

  center 可利用的空间在父盒子的两侧平均分配。

  属性“box- align”管理垂直方向上的空间分布,有以下五个可能属性之:start、 end,、center、 baseline和 stretch。

  start 每个盒子沿父盒子的上边缘排列,余下的空间位于底部;

  end 每个盒子沿父盒子的下边缘排列,余下的空间位于顶部;

  center 可用空间平均分配,上面一半,下面一半;

  baseline 所有盒子沿着它们的基线排列,余下的空间可前可后;

  stretch 每个盒子的高度调整到适合父盒子的高度

  body {display: box;box-orient: horizontal;width: 400px;}#box1 {box-flex: 2;}#box2 {box-flex: 1;}#box3 {width: 160px;}

  空间不足怎么办

  与传统的盒模型一样,overflow属性用来决定其显示方式。为了避免溢出,你可以设置box-lines为multiple使其换行显示。

  弹性盒模型看起来很不错,Gecko 和 WebKit对该模型都有一些尝试性的测试。在这些属性之前加上-moz和-webkit即可使用该属性。也即是说,firefox、safari、chrome可以使用这些特性,可以看看这个弹性盒模型的demo。

CSS3弹性盒子是否属于标准流

是标准文档流,同时用好这个弹性属性可以高效的布局,不用要用浮动这种脱离的方式来布局。

display:flex|inline-flex```

具体的弹性容器属性列表:

* flex-direction:弹性容器中子元素的排列方式(主轴排列方式)* flex-wrap:设置弹性盒子的子元素超出父容器时是否换行* flex-flow:flex-direction 和 flex-wrap 的简写* align-item:设置弹性盒子元素在侧轴(纵轴)方向上的对齐方式* align-content:修改 flex-wrap 属性的行为,类似 align-items, 但不是设置子元素对齐,而是设置行对齐(行与行的对其方式)* justify-content:设置弹性盒子元素在主轴(横轴)方向上的对齐方式

我这里有个案例,你需要什么样的布局里面都能找:网页链接

用CSS2及CSS3弹性盒两种方式实现如下布局,要求自适应浏览器窗口宽高

样式一: css3弹性《style type=“text/css“》*{margin: 0;padding: 0;}.top{width: 100%;height: 100px;background: greenyellow;}.flex{display: flex;}.left{width: 200px;background: orangered;}.right{flex-grow: 1;background: blue;}《/style》样式二: css2《style type=“text/css“》*{margin: 0;padding: 0;}.top{width: 100%;height: 100px;background: greenyellow;}.left{width: 200px;background: orangered;float: left;}.right{margin-left: 200px;background: blue;}《/style》《body》《div class=“top“》《h1》头《/h1》《/div》《div class=“flex“》《div class=“left“》《h1》左边《/h1》《h1》左边《/h1》《h1》左边《/h1》《h1》左边《/h1》《/div》《div class=“right“》《h1》右边《/h1》《h1》右边《/h1》《h1》右边《/h1》《h1》右边《/h1》《/div》《/div》《/body》

css3手册弹性布局(css3的弹性框模型是什么意思)

本文编辑:admin

本文相关文章:


css3手册弹性布局(css3 弹性布局 中间高度自适应 怎么适应手机上拉)

css3手册弹性布局(css3 弹性布局 中间高度自适应 怎么适应手机上拉)

大家好,今天小编来为大家解答以下的问题,关于css3手册弹性布局,css3 弹性布局 中间高度自适应 怎么适应手机上拉这个很多人还不知道,现在让我们一起来看看吧!本文目录css3 弹性布局 中间高度自适应 怎么适应手机上拉css3 弹性布局

2024年8月24日 01:35

更多文章:


js输出html代码(如何将js 输出到html源码中)

js输出html代码(如何将js 输出到html源码中)

本文目录如何将js 输出到html源码中HTML中如何让JS代码原样输出将如下代码原样输出在HTML页面上js输出大段html文档简便方法JS中用document.write()输出HTML代码js输出html在页面怎样显示换行js输出ht

2024年7月18日 22:57

苹果12pro充电显示解锁插件什么意思?IOS7越狱有个双击屏幕就会解锁的插件叫什么名字

苹果12pro充电显示解锁插件什么意思?IOS7越狱有个双击屏幕就会解锁的插件叫什么名字

本文目录苹果12pro充电显示解锁插件什么意思IOS7越狱有个双击屏幕就会解锁的插件叫什么名字苹果4有什么好的屏幕锁插件遨游浏览器的鼠标解锁插件是干什么用的 怎么用手机解锁软件哪些是比较好用的战舰世界传奇插件解锁条件oppo桌面如何添加锁屏

2024年7月6日 09:10

const和static(c#中static和const有什么区别)

const和static(c#中static和const有什么区别)

本文目录c#中static和const有什么区别const和static const的区别c# 中static变量和const变量 都是只能被初始化赋值一次它们在内存中的存储有什么区别c#中const和static的区别分别是什么const

2024年7月24日 16:54

mysql数据迁移方案(如果把MySQL的数据迁移到新的库新的表)

mysql数据迁移方案(如果把MySQL的数据迁移到新的库新的表)

本文目录如果把MySQL的数据迁移到新的库新的表mysql 数据怎么迁移到postgresqlMySQL数据目录迁移mysql数据迁移(mysql数据迁移方案)如果把MySQL的数据迁移到新的库新的表是所有的表结构都不一样么?新表中的表结构

2024年7月21日 05:08

关于以色列总统!!!!!!!!!!!!!!!?以色列的选举制度

关于以色列总统!!!!!!!!!!!!!!!?以色列的选举制度

本文目录关于以色列总统!!!!!!!!!!!!!!!以色列的选举制度以色列有总统吗以色列总理几年一换以色列年内第二次选举,为何国家安全问题被推上风口浪尖大卫本古里安简介以色列是在什么时间建国的,背景又是什么以色列总统的现任总统以色列全国有大

2024年6月30日 15:10

include等于什么(include什么意思包含什么词性)

include等于什么(include什么意思包含什么词性)

本文目录include什么意思包含什么词性include是什么意思,可以干什么用include什么意思include什么意思包含什么词性include的形容词是:inclusive、included;名词是:inclusion;介词是:in

2024年7月16日 20:56

thinkphp社区源码(thinkphp配置问题,手上有一个TP框架源码,需要上线使用,捣鼓好久没搞明白,求助高手指点一二感谢)

thinkphp社区源码(thinkphp配置问题,手上有一个TP框架源码,需要上线使用,捣鼓好久没搞明白,求助高手指点一二感谢)

大家好,关于thinkphp社区源码很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于thinkphp配置问题,手上有一个TP框架源码,需要上线使用,捣鼓好久没搞明白,求助高手指点一二感谢的知识点,相信应该可以解决大家的一些困

2024年9月2日 04:00

no such file or directory open(错误提示:No such file or directory 要怎么办)

no such file or directory open(错误提示:No such file or directory 要怎么办)

大家好,今天小编来为大家解答以下的问题,关于no such file or directory open,错误提示:No such file or directory 要怎么办这个很多人还不知道,现在让我们一起来看看吧!本文目录错误提示:N

2024年7月16日 03:25

解释器能产生更快的程序(解释器的介绍)

解释器能产生更快的程序(解释器的介绍)

本文目录解释器的介绍编译器和解释器的区别编译程序和解释程序均能产生目标程序吗怎样最大程度用CPU,提高程序运行速度解释器的解释解释器的解释是什么脚本区别于程序与软件的原理是什么计算机有解释器为什么还要有编译器 明显是编译器要快捷于解释器啊解

2024年7月8日 07:53

xss装windows(关于SAP netweaver xss漏洞)

xss装windows(关于SAP netweaver xss漏洞)

本文目录关于SAP netweaver xss漏洞每次打开电脑都会有libxsse.d11这个应用程序未能启动,重装可能会修复此问题该怎么办xss双人成行文件大小windows10浏览器反复出现元素xss如何连接无线网win7中出现 错误码

2024年4月10日 06:20

span标签怎么加(javascript在文字中插入,触发事件为文字添加标签)

span标签怎么加(javascript在文字中插入,触发事件为文字添加标签)

本文目录javascript在文字中插入,触发事件为文字添加标签如何为主菜单链接里添加一个span标签dw软件中span标记在哪里如何用span标签做文字设计呀span 如何添加链接html超链接中间加个span怎么加超链接在js中, 怎么

2024年7月14日 16:43

unity3d中文官网(unity3d中文版下载地址 3.5的吧 因为的书是说3.5的 最好是破解版)

unity3d中文官网(unity3d中文版下载地址 3.5的吧 因为的书是说3.5的 最好是破解版)

本文目录unity3d中文版下载地址 3.5的吧 因为的书是说3.5的 最好是破解版unity3d中文视频网址谁有来一份谢谢unity3d中文版下载地址 3.5的吧 因为的书是说3.5的 最好是破解版现在最新的4.0没有中文版的可以直接到官

2024年5月8日 08:37

promise链式调用(Promise 的三种状态,以及then、catch的链式调用)

promise链式调用(Promise 的三种状态,以及then、catch的链式调用)

大家好,如果您还对promise链式调用不太了解,没有关系,今天就由本站为大家分享promise链式调用的知识,包括Promise 的三种状态,以及then、catch的链式调用的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始

2024年8月6日 09:20

c语言程序设计学生名片(急!c语言学生名片管理系统)

c语言程序设计学生名片(急!c语言学生名片管理系统)

本篇文章给大家谈谈c语言程序设计学生名片,以及急!c语言学生名片管理系统对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录急!c语言学生名片管

2024年7月24日 10:03

fueling(fueling是什么意思)

fueling(fueling是什么意思)

本文目录fueling是什么意思Fuel是什么意思fueling是什么意思加油双语对照词典结果:fueling[英][fju:əlŋɪ][美][fju:əlŋɪ]v.给…加燃料,给…加油( fuel的现在分词 ); 激起; 补充燃料; 以上

2024年6月27日 13:15

remark是什么梗(“remarks”是什么意思)

remark是什么梗(“remarks”是什么意思)

本文目录“remarks”是什么意思“remark” 英翻译为汉语什么意思remark是什么梗remark出现在数学论文中什么意思,如何翻译在线等,求大神remark是什么意思请问remark这个词有什么意思,怎么用呢“remarks”是什

2024年7月8日 06:26

java开发环境下载(开始用java怎么下载安装开发环境、设置变量等等,有完整详细的步骤吗谢谢啦!)

java开发环境下载(开始用java怎么下载安装开发环境、设置变量等等,有完整详细的步骤吗谢谢啦!)

本文目录开始用java怎么下载安装开发环境、设置变量等等,有完整详细的步骤吗谢谢啦!如何下载Java运行环境Greenfoot(JAVA开发环境)官方版3.5.1版本在哪有下载开始用java怎么下载安装开发环境、设置变量等等,有完整详细的步

2024年6月8日 13:10

优慕课学生登录入口(优慕课密码一直不对怎样解决)

优慕课学生登录入口(优慕课密码一直不对怎样解决)

本文目录优慕课密码一直不对怎样解决优慕课v8pc端如何打开课程伴侣怎么设置自动登录优慕课手机版如何改密码优课yooc怎么找回密码慕课怎么认证成为本校学生优慕课密码一直不对怎样解决1、打开优慕课官网,点击【登录】-【忘记密码】,输入之前绑定的

2024年6月21日 22:34

人成免费入口2022(2022年湖北成人高考报名入口在哪里最新报考流程)

人成免费入口2022(2022年湖北成人高考报名入口在哪里最新报考流程)

“人成免费入口2022”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看人成免费入口2022(2022年湖北成人高考报名入口在哪里最新报考流程)!本文目录2022年湖北成人高考报名入口在哪里最新报考流程湖北省2022年成人高考

2024年9月4日 01:40

diameter怎么读(直径怎么读)

diameter怎么读(直径怎么读)

大家好,diameter怎么读相信很多的网友都不是很明白,包括直径怎么读也是一样,不过没有关系,接下来就来为大家分享关于diameter怎么读和直径怎么读的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!本文目录直径怎么读

2024年9月4日 20:10

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1730
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1154
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1151
标签列表

热门搜索