您现在的位置是:网站首页> 编程资料编程资料
实例讲解CSS3中的box-flex弹性盒属性布局10分钟理解CSS3 FlexBox弹性布局CSS3 Flex 弹性布局实例代码详解css flex 弹性布局详解CSS3弹性盒模型flex box快速入门心得(必看篇)基础的CSS3弹性盒Flexbox布局使用实例flex弹性盒布局最后一行左对齐的实现思路
2021-09-05
932人已围观
简介 flex布局毫无疑问是当今Web页面的最强大布局方式,box-flex弹性盒模型是其中的一个代表,这里我们就来以实例讲解CSS3中的box-flex弹性盒模型布局
box-flex是css3新添加的盒子模型属性,它的出现打破了我们经常使用的浮动布局,实现垂直等高、水平均分、按比例划分。但是它有一定的局限性,在firefox、chrome这浏览器下需要使用它们的私有属性来定义:firefox(-moz)、chrome(-webkit)。
一、box-flex属性
box-flex主要让子容器针对父容器的宽度按一定规则进行划分。
- "box">"col_1">111"col_2">222"col_3">333
注意:
父容器必须定义为display:box,其子容器才可以进行划分(如果定了display:box则该容器为内联元素,使用margin:0 auto让其居中在firefox下无效,需要通过父容器的text-align:center;来控制。但在chrome下是可以的)
上面所讲到的例子中,三个子块分别设置了1、2、2,也就是把这个父容器分成5份,分别占据了父结构宽度的1/5(100px)、2/5(200px)、2/5(200px)。
以上是按比例数来进行划分的,如果其中一个或多个子容器设置了固定宽度,其它子容器没有设置,那么设置宽度的按宽度来算,剩下的部分再按上面的方法来计算。
- .col_3 {
- background-color:#fcf;
- width:50px;/*设置宽度为50px*/
- }
当子容器中需要有间隔的时候,他们平分的宽度需要减去中间的margin,然后再按比例平分。
- .col_2 {
- background-color:#ccf;
- box-flex:2;
- -moz-box-flex:2;
- -webkit-box-flex:2;
- margin:0 20px;
- }
二、box属性
上面讲到的是如何将box-flex如何对父容器的宽度进行划分,现在来说一下父容器里面的box属性包括哪些。
box-orient, box-direction, box-align, box-pack, box-lines
1、box-orient
box-orient用来确定父容器里子容器的排列方式是水平还是垂直,可选属性如下:
horizontal | vertical | inline-axis | block-axis | inherit
horizontal和inline-axis属性其效果表现一致,都可以将容器水平排列,在默认情况下也呈现水平排列的样式。当父容器设置高度时,在firefox下面其子容器的高度无效,但chroma下面则有效。
- .col_1 {
- height:50px;
- }
- .col_2 {
- height:80px;
- }
如果你容器不设置高度,子容器的高度值才生效,在firefox下面他们的高度取其中的最大值。而chrome下面设置高度的子容器为自己的高度,未设置的其高度和最大值的高度一样,其实就是和父容器的高度一致。
- .box {
- /*未设置高度*/
- }
- .col_1 {
- height:50px;
- }
- .col_2 {
- height:80px;
- }
- .col_3 {
- /*未设置高度*/
- }
vertical和block-axis属性效果表现一致,都可将子容器垂直排列。他们是对父容器的高度进行分配。如果子容器设置了宽度,也是谷歌下面有效,火狐无效,其它都与horizontal表现一致。
2、box-direction
box-direction用来确定父容器里面的子容器排列顺序,具有以下属性:
normal | reverse | inherit
normal是默认值,如上面测试结果。
reverse表示反转,其表现方式跟normal相反,呈现为3、2、1
3、box-align
box-align表示父容器里面子容器的垂直对齐方式,属性值为:
start | end | center | baseline | stretch
start、baseline展示效果
end展示效果
center展示效果
stretch展示效果,(谷歌下面如start)
4、box-pack
box-pack表示父容器里面子容器的水平对齐方式,可选参数如下所示:
start | end | center | justify
css代码
- .box {
- display:box;
- display:-webkit-box;
- display:-moz-box;
- background-color:#fff;
- width:500px;
- border:1px solid #333;
- margin:0 auto;
- height:100px;
- -webkit-box-pack:start;
- -moz-box-pack:start;
- box-pack:start;
- }
- .col_1,.col_2,.col_3{
- width:100px;
- }
start:在box-pack表示水平居左对齐,如下所示:
end:在box-pack表示水平居右对齐,如下图所示
center:在box-pack表示水平居中对齐,如下图所示
justify:在box-pack表示两边对齐试
相关内容
- 详解CSS3的图层阴影和文字阴影效果使用CSS3实现的渐变幻灯片效果css3中less实现文字长阴影(long shadow)CSS3的文字阴影—text-shadow的使用方法css文字阴影渐渐模糊效果的实现
- SCSS移动端页面遮罩层效果的实现及常见问题解决CSS实现鼠标移至图片上显示遮罩层效果css div实现的遮罩层完美兼容IE6-IE9 FireFoxCSS实现带遮罩层可关闭的弹窗效果
- CSS3制作漂亮的照片墙的实现代码纯css实现照片墙3D效果的示例代码CSS3制作精致的照片墙特效CSS3实现漂亮的照片墙效果的简单实例(推荐)CSS3实现鼠标悬停照片墙放大特效源码纯css3实现照片墙效果CSS3简单实现照片墙CSS3实现的悬挂照片墙效果源码jquery+css3实现非常大气的瀑布流照片墙特效利用css制作3D照片墙效果
- 浅谈CSS样式之背景、文本实例讲解CSS3中的box-flex弹性盒属性布局SCSS移动端页面遮罩层效果的实现及常见问题解决20个非常实用的CSS技巧css前端知识点总结(必看篇)
- CSS 设置技巧(单位和值与样式设置技巧)提高CSS代码效率的编写技巧使用CSS的pointer-events属性实现鼠标穿透效果的神奇技巧20个非常实用的CSS技巧CSS 高级技巧总结(必看)必须掌握10个非常不错的CSS技巧详解CSS制作Web页面条纹背景样式的技巧CSS制作边框效果的技巧总结css布局小技巧分享(必看)20 个 CSS 高级技巧汇总(推荐)
- 清除浮动(float)的影响介绍CSS的clear属性清除浮动的基本用法示例浅谈css清除浮动(clearfix和clear)的用法浅谈CSS中的clear清除浮动CSS清除浮动的方法详解CSS浮动所差生的内容溢出问题及清除浮动的方法小结清除浮动的几种方法(推荐)
- CSS 高级技巧总结(必看)提高CSS代码效率的编写技巧使用CSS的pointer-events属性实现鼠标穿透效果的神奇技巧20个非常实用的CSS技巧CSS 设置技巧(单位和值与样式设置技巧)必须掌握10个非常不错的CSS技巧详解CSS制作Web页面条纹背景样式的技巧CSS制作边框效果的技巧总结css布局小技巧分享(必看)20 个 CSS 高级技巧汇总(推荐)
- CSS3制作彩色进度条样式的代码示例分享CSS Bootstrap炫酷进度条动画样式效果CSS3结合jQuery实现的3中不同样式手动控制的进度条效果使用css实现物流进度的样式的实例代码
- CSS固定宽度的三列布局运用实例解析CSS的三列式"圣杯布局"方案完全解析CSS三列布局的多种表现形式学习DIV+CSS网页布局之三列布局纯CSS实现的三列布局网页效果实例CSS三列布局两端固定宽度中间自适应
- 使用CSS的border属性构建变形边框的方法总结