0

0

弹性盒模型-容器属性的理解

一个新手

一个新手

发布时间:2017-10-16 10:31:32

|

2264人浏览过

|

来源于php中文网

原创

  布局的传统方案,基于盒装模型,依赖display属性+position属性+float属性。他对于那些特殊的布局非常不方便,比如,垂直居中就不容易实现。
  2009年,w3c提出了一种新的方案—-flex布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。
  采用flex布局的元素,称为flex容器(flex container),简称”容器”。它的所有子元素自动成为容器成员,称为flex项目(flex item),简称”项目”。
  今天我来分享一下我对弹性盒模型的见解和经验,如有不足之处欢迎留言指正。
  在网上看过这一些关于弹性盒子模型的知识,我相信百度过这方面知识点的人都见过下面的这一幅图片,第一次看就一脸懵逼,如果先了解实验之后再来看下面这一幅图就清楚了,今天我就扯开主轴,交叉轴啥这些的不谈,后面写了一些发现还是要看一下主轴和交叉轴,,,, 简单的来可以先认为主轴就是横轴,交叉轴就是竖着的纵轴,下面看就直接来代码和效果,希望你看到过后进行实验,我相信你会对弹性盒子的知识会有很大的了解并且能够应用弹性盒子来进行布局。

  

一、初始的代码和样式如下,接下来我们添加代码和修改代码来查看样式的区别。

        

  

   
  弹性盒子嘛,首要的条件还是要说一下容器和项目,对于我们这个而言容器就是代码中的 ul , 项目为 li。好了接下来开始添加代码看看神奇的样式。
  对于弹性盒子而言首要条件就是给容器添加上  display:flex;  

  下面的这些属性都是容器属性,都添加到ul上面。

一、 flex-direction: 决定主轴方向。
  1. flex-direction:row;(主轴方向:横排/行 从左到右排列)
   将这个属性添加到容器ul当中,会发现样式如下,居然可以横排显示。

  

   说到弹性我们来试验一下这个效果,将外面的容器的宽度减小一些

  

   我们先减小到这样,如果宽度继续小的话,会发现他会不一样,就算把宽度缩小之后他也不会换行,并且在缩小之后他的宽度会维持在它里面内容的宽度。

  2.flex-direction:row-reverse;(主轴 从右到左排列)

   

3.flex-direction:column;(主轴为垂直方向 从上到下排列)

    

 

易企CMS1.8
易企CMS1.8

易企CMS:国内首款完全基于SEO友好性开发的营销型企业网站系统,让企业网络营销从此易如反掌。 本程序特征:100%开发源代码,免费开源;后台管理操作简单易行;模板div+css标准设计,符合w3c标准,兼容主流浏览器;开发语言和数据库:PHP+Mysql。 本程序亮点:从基础代码开发起完全符合SEOWHY理论的SEO规范,力图实现国内首款对SEO最友好的企业网站开源程序,为企业网络营销的巨大成功

下载

4.flex-direction:column-reverse;(主轴为垂直方向  从下往上排列)

    

 

二、flex-wrap: 该属性控制flex是单行还是多行(注意:这里的我把宽度都给调整小了,改为了300px)
  1.flex-wrap:nowrap;(默认值,不换行)
      就像最开始我们实验的那样,就算把他的宽度设置成那么小他都不会换行
  2.flex-wrap:wrap;  (换行)如下图

  

 

  3.flex-wrap:wrap-reverse; (反转,通俗的说就是把第一行和最后一行换位置,第二行和倒数第二行换位置,依次类推)

  

三、flex-flow;  flex-direction和flex-wrap的复合简写形式,默认为 row nowrap;

  1. flex-flow:row-reverse wrap;(从右向左排列,换行)

  

  就写一种组合属性吧其他的样式自己去试一试。
四、justify-content 定义了项目在主轴上的排列方式
  注意:下面的实验我加上了flex-wrap:wrap; 换行属性(容易辨别)
  1.justify-content:flex-start; (左对齐)

  

 

  2.justify-content:flex-end;(右对齐)

  

 

  3.justify-content:center;(居中对齐)

  

 

  4.justify-content:space-between;(两端对齐,项目之间间隔相等)

  这里我把宽度变小了一些,看到下面这幅图是不是感觉只用这个属性就可以很容易的实现布局了呢。

  

 

  5 .justify-content:space-around;(每个项目两侧间隔相等)

  

 

五、align-item 规定了弹性盒子在交叉轴如何对齐
  这一次把第一个和第二个高度调整大一些是这个样子,下图的默认值,规定不换行了

  1.align-items:stretch;(默认值)

   

 


  2.align-items:flex-end;(交叉轴的终点对齐)

  

 

  3. align-items:center;(与交叉轴中点对齐)

  

 

  4. align-items:baseline;(项目的第一行文字的基线对齐)
  这里的文字的大小调整一下,第一个文字改为40px,

  

 

  5. align-items:flex-start;(交叉轴的起点对齐)

  

  六、align-content:
  定义了多根轴线的对齐方式,如果项目只有一根轴线,则不起作用。
  这里我给调整了一个容器属性的高度为300px; 换行显示
  1、align-content: stretch(默认值,轴线占满整个交叉轴)

  

  2、align-content:  flex-star(与交叉轴起点对齐)

  

  3、align-content: flex-end(与交叉轴终点对齐)

  

  4、align-content: center(与交叉轴中点对齐)

  

  5、align-content: space-between(与交叉轴两端对齐,之间平均分配)

  

  6、align-content: space-around(交叉轴两侧间隔相等)

  

  在这里先介绍这么多,下一次就分享一下弹性盒子项目的一些属性,如果有不清楚的地方或者文章有不足之处,希望各位可以指正,如果你看到我的文章可以收获了一些知识,那么我会非常高兴的。

相关专题

更多
Golang gRPC 服务开发与Protobuf实战
Golang gRPC 服务开发与Protobuf实战

本专题系统讲解 Golang 在 gRPC 服务开发中的完整实践,涵盖 Protobuf 定义与代码生成、gRPC 服务端与客户端实现、流式 RPC(Unary/Server/Client/Bidirectional)、错误处理、拦截器、中间件以及与 HTTP/REST 的对接方案。通过实际案例,帮助学习者掌握 使用 Go 构建高性能、强类型、可扩展的 RPC 服务体系,适用于微服务与内部系统通信场景。

8

2026.01.15

公务员递补名单公布时间 公务员递补要求
公务员递补名单公布时间 公务员递补要求

公务员递补名单公布时间不固定,通常在面试前,由招录单位(如国家知识产权局、海关等)发布,依据是原入围考生放弃资格,会按笔试成绩从高到低递补,递补考生需按公告要求限时确认并提交材料,及时参加面试/体检等后续环节。要求核心是按招录单位公告及时响应、提交材料(确认书、资格复审材料)并准时参加面试。

44

2026.01.15

公务员调剂条件 2026调剂公告时间
公务员调剂条件 2026调剂公告时间

(一)符合拟调剂职位所要求的资格条件。 (二)公共科目笔试成绩同时达到拟调剂职位和原报考职位的合格分数线,且考试类别相同。 拟调剂职位设置了专业科目笔试条件的,专业科目笔试成绩还须同时达到合格分数线,且考试类别相同。 (三)未进入原报考职位面试人员名单。

58

2026.01.15

国考成绩查询入口 国考分数公布时间2026
国考成绩查询入口 国考分数公布时间2026

笔试成绩查询入口已开通,考生可登录国家公务员局中央机关及其直属机构2026年度考试录用公务员专题网站http://bm.scs.gov.cn/pp/gkweb/core/web/ui/business/examResult/written_result.html,查询笔试成绩和合格分数线,点击“笔试成绩查询”按钮,凭借身份证及准考证进行查询。

11

2026.01.15

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

65

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

36

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

75

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

21

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

35

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Git 教程
Git 教程

共21课时 | 2.7万人学习

Django 教程
Django 教程

共28课时 | 3.1万人学习

MySQL 教程
MySQL 教程

共48课时 | 1.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号