当前位置: 首页 > news >正文

flex 布局完整功能介绍和示例演示

Flex布局(弹性布局)是一种高效的CSS布局模式,用于创建响应式和灵活的页面布局。以下是其完整功能介绍和示例演示:

基本概念
  • 弹性容器(Flex Container):设置display: flexdisplay: inline-flex的元素成为弹性容器。
  • 弹性项目(Flex Item):弹性容器的直接子元素。
容器属性
  1. flex-direction

    • 功能:定义主轴方向,决定弹性项目的排列方向。
    • 示例
      .container {flex-direction: row; /* 默认值,水平从左到右 *//* 其他值:row-reverse(从右到左)、column(垂直从上到下)、column-reverse(从下到上) */
      }
      
  2. flex-wrap

    • 功能:控制弹性项目是否换行。
    • 示例
      .container {flex-wrap: nowrap; /* 默认值,不换行 *//* 其他值:wrap(换行,第一行在上方)、wrap-reverse(换行,第一行在下方) */
      }
      
  3. justify-content

    • 功能:定义弹性项目在主轴上的对齐方式。
    • 示例
      .container {justify-content: flex-start; /* 默认值,靠主轴起点对齐 *//* 其他值:flex-end(靠主轴终点对齐)、center(居中对齐)、space-between(两端对齐,项目间等距)、space-around(每个项目周围等距)、space-evenly(项目间及首尾等距) */
      }
      
  4. align-items

    • 功能:定义弹性项目在交叉轴上的对齐方式。
    • 示例
      .container {align-items: stretch; /* 默认值,拉伸填满交叉轴 *//* 其他值:flex-start(靠交叉轴起点对齐)、flex-end(靠交叉轴终点对齐)、center(居中对齐)、baseline(基线对齐) */
      }
      
  5. align-content

    • 功能:定义多行弹性项目在交叉轴上的对齐方式(仅在有多行时有效)。
    • 示例
      .container {align-content: stretch; /* 默认值,拉伸填满交叉轴 *//* 其他值:flex-start(靠交叉轴起点对齐)、flex-end(靠交叉轴终点对齐)、center(居中对齐)、space-between(行间等距)、space-around(每行周围等距) */
      }
      
项目属性
  1. order

    • 功能:控制弹性项目的排列顺序,值越小越靠前。
    • 示例
      .item {order: 1; /* 默认值 */
      }
      
  2. flex-grow

    • 功能:定义弹性项目的放大比例。
    • 示例
      .item {flex-grow: 1; /* 默认值0,不放大 */
      }
      
  3. flex-shrink

    • 功能:定义弹性项目的缩小比例。
    • 示例
      .item {flex-shrink: 1; /* 默认值,可缩小 */
      }
      
  4. flex-basis

    • 功能:设置弹性项目的初始尺寸。
    • 示例
      .item {flex-basis: auto; /* 默认值,根据内容决定尺寸 *//* 其他值:具体像素值、百分比等 */
      }
      
  5. flex

    • 功能flex-growflex-shrinkflex-basis的缩写。
    • 示例
      .item {flex: 1 1 auto; /* 默认值 *//* 示例:flex: 2 0 200px; */
      }
      
  6. align-self

    • 功能:单独设置某个弹性项目在交叉轴上的对齐方式,覆盖align-items
    • 示例
      .item {align-self: auto; /* 默认值,继承align-items *//* 其他值与align-items相同 */
      }
      
示例演示
  1. 水平居中

    .container {display: flex;justify-content: center;
    }
    
  2. 垂直居中

    .container {display: flex;align-items: center;
    }
    
  3. 等分布局

    .container {display: flex;justify-content: space-between;
    }
    
  4. 多列自适应

    .container {display: flex;flex-wrap: wrap;
    }
    .item {flex: 1 0 200px;
    }
    
总结

Flex布局通过简单的属性设置,实现了灵活的页面布局,适用于各种响应式设计需求。掌握Flex布局,可以大大提高前端开发的效率。

http://www.lryc.cn/news/585315.html

相关文章:

  • 牛客:HJ17 坐标移动[华为机考][字符串]
  • Umi-OCR 的 Docker(win制作镜像,Linux(Ubuntu Server 22.04)离线部署)
  • Elasticsearch安装、入门、基础API操作、全文检索、精准查询、地理查询、复合查询、排序、分页、高亮、数据聚合、自动补全、数据同步、ES集群
  • 连锁门店如何统一固定资产盘点?总部+门店协同攻略
  • 基于Python的豆瓣图书数据分析与可视化系统【自动采集、海量数据集、多维度分析、机器学习】
  • nginx 负载均衡配置(加解决重复登录问题)
  • 【机器学习】机器学习基础
  • 借助 Wisdom SSH AI 助手,轻松安装 CentOS 8 LNMP 环境
  • 财务数字化——83页麦肯锡——建立成功的财务管理体系【附全文阅读】
  • V少JS基础班之第七弹
  • 人形机器人公司融合Xsens与Manus动作捕捉技术,利用人工智能训练机器人模仿人类动作,以执行复杂任务
  • OGG-00551 ODBC error: SQLSTATE 22007,从字符串转换日期和/或时间时,转换失败
  • JAVA面试宝典 -《Spring Boot 自动配置魔法解密》
  • 【氮化镓】不同偏压应力下电荷俘获效应导致的P-GaN HEMT阈值电压不稳定性
  • JVM方法区的运行时常量区到底存储哪些数据?
  • 【牛客刷题】dd爱科学1.0
  • LeetCode经典题解:128、最长连续序列
  • 从就绪到终止:操作系统进程状态转换指南
  • YS高容量通风器说明
  • BLE低功耗设计:从广播模式到连接参数优化的全链路分析与真题解析
  • 输入流挂起
  • 基于openEuler搭建Glusterfs集群实验
  • 2025企业官网黑链攻防实战:从紧急处置到长效防御体系构建
  • Python-异常、模块与包
  • 1Panel V1 无缝升级到 V2 版本 实现多个 PHP 网站共享一个容器
  • MySQL表的增删查改(下)(7)
  • 2025 年第十五届 APMCM 亚太地区大学生数学建模竞赛-B题 疾病的预测与大数据分析
  • 藏不住了,全是硬货!极空间快照,夸克网盘挂载,HDMI桌面输出全部安排!
  • 数据结构 之 【链式二叉树】(C语言实现二叉树的前序中序后序层序遍历,节点个数、树的高度、第K层的节点个数、查找、完全二叉树的判别、销毁创建二叉树)
  • 北京-4年功能测试2年空窗-报培训班学测开-第四十八天