【前端web入门第六天】02 flex布局

简介: Flex布局是一种现代CSS布局模式,通过给父元素设置`display: flex`,其子元素可自动挤压或拉伸。它包含弹性容器和弹性盒子,主轴默认为水平方向,侧轴为垂直方向。主轴对齐方式由`justify-content`属性控制,侧轴对齐方式包括`align-items`(针对所有子元素)和`align-self`(针对单个子元素)。修改主轴方向使用`flex-direction`属性,`flex`属性用于控制子元素在主轴上的伸缩比例。此外,`flex-wrap`属性允许子元素换行,而`align-content`属性则定义多行对齐方式。

Flex布局

1.Flex组成

设置方式:给父元素设置display: flex,子元素可以自动挤压或拉伸
组成部分:

  • 弹性容器
  • 弹性盒子
  • 主轴:默认在水平方向
  • 侧轴/交叉轴:默认在垂直方向

image.png

分析:

自动设置,由代码实现.

2.主轴与侧轴对齐方式

2.1 主轴对齐方式(横轴)

属性名: justify-content

image.png

2.2 侧轴对齐方式 (纵轴)

属性名

  • align-items:当前弹性容器内所有弹性盒子的侧轴对齐方式(给弹性容器设置).
  • align-self:单独控制某个弹性盒子的侧轴对齐方式(给弹性盒子设置)


      <th>属性值</th>
      <th>效果</th>
  </tr>

      <td>stretch</td>
      <td>弹性盒子沿着侧轴线被拉伸至铺满容器(弹性盒子没有设置侧轴方向尺寸则默认拉伸)

  </tr>
  <tr>
      <td>center</td>
      <td>弹性盒子沿侧轴居中排列</td>
  </tr>
   <tr>
      <td>flex-start    </td>
      <td>弹性盒子从起点开始依次排列

  </tr>
   <tr>
      <td>flex-end</td>
      <td>弹性盒子从终点开始依次排列

  </tr>


分析:

前两个重点,后两个基本不用.

2.3 修改主轴方向

主轴默认在水平方向,侧轴默认在垂直方向
属性名:flex-direction
属性值
image.png

分析:

只记colum.
修改主轴方向垂直方向;侧轴自动变换到水平方向

3.弹性伸缩比

作用︰控制弹性盒子的主轴方向的尺寸。
属性名: flex
属性值:整数数字,表示占用父级剩余尺寸的份数。

分析:

默认情况下,主轴方向尺寸是靠内容撑开:侧轴默认拉伸

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>flex布局-弹性伸缩比</title>
  <style>
    /* 默认情况下,主轴方向尺寸是靠内容撑开;侧轴默认拉伸 */
    .box {
    
      display: flex;
      flex-direction: column;

      height: 300px;
      border: 1px solid #000;
    }

    .box div {
    
      /* height: 100px; */
      background-color: pink;
    }

    .box div:nth-child(1) {
    
      width: 200px;
    }

    .box div:nth-child(2) {
    
      flex: 1;
    }

    .box div:nth-child(3) {
    
      flex: 2;
    }
  </style>
</head>
<body>
  <div class="box">
    <div>1</div>
    <div>2</div>
    <div>3</div>
  </div>
</body>
</html>

4.弹性换行与行对齐方式

4.1 弹性换行

弹性盒子可以自动挤压或拉伸,默认情况下,所有弹性盒子都在一行显示。
属性名: flex-wrap

属性值

  • wrap:换行
  • nowrap:不换行(默认)

4.2 行对齐方式

属性名: align-content
属性值

image.png

相关文章
|
8天前
|
前端开发 JavaScript 安全
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第27天】本文介绍了HTTP/2和HTTPS在前端性能调优中的应用。通过多路复用、服务器推送和头部压缩等特性,HTTP/2显著提升了Web性能。同时,HTTPS确保了数据传输的安全性。文章提供了示例代码,展示了如何使用Node.js创建一个HTTP/2服务器。
20 2
|
5天前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
4天前
|
Web App开发 前端开发 JavaScript
前端开发的秘密武器:这些工具让你轻松应对各种复杂布局!
【10月更文挑战第31天】前端开发充满挑战,尤其是在处理复杂布局时。本文介绍了几种关键工具和技术,如HTML和CSS基础、Firefox开发者工具、Visual Studio Code以及Vue、React和Angular等前端框架,帮助开发者高效应对复杂布局,提升代码质量和用户体验。
12 2
|
9天前
|
前端开发 JavaScript
Bootstrap Web 前端 UI 框架
Bootstrap 是快速开发 Web 应用程序的前端工具包。
23 3
|
9天前
|
前端开发 安全 应用服务中间件
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第26天】随着互联网的快速发展,前端性能调优成为开发者的重要任务。本文探讨了HTTP/2与HTTPS在前端性能优化中的应用,介绍了二进制分帧、多路复用和服务器推送等特性,并通过Nginx配置示例展示了如何启用HTTP/2和HTTPS,以提升Web应用的性能和安全性。
15 3
|
9天前
|
前端开发 JavaScript API
前端框架新探索:Svelte在构建高性能Web应用中的优势
【10月更文挑战第26天】近年来,前端技术飞速发展,Svelte凭借独特的编译时优化和简洁的API设计,成为构建高性能Web应用的优选。本文介绍Svelte的特点和优势,包括编译而非虚拟DOM、组件化开发、状态管理及响应式更新机制,并通过示例代码展示其使用方法。
24 2
|
10天前
|
开发框架 前端开发 JavaScript
Web前端框架
Web前端框架等名词
14 2
|
20天前
|
人工智能 前端开发
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
|
23天前
|
存储 前端开发 JavaScript
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
【10月更文挑战第4天】本文探讨了从 Web 2.0 到 Web 3.0 的前端开发演变过程。Web 2.0 时代,前端开发者从静态网页设计走向复杂交互,技术框架如 jQuery、React 和 Vue 带来了巨大的变革。而 Web 3.0 以区块链技术为核心,带来了去中心化的互联网体验,前端开发者面临与区块链交互、去中心化身份验证、分布式存储等新挑战。文章总结了 Web 2.0 和 Web 3.0 的核心区别,并为开发者提供了如何应对新技术的建议,帮助他们在新时代中掌握技能、设计更安全的用户体验。
48 0
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
|
10天前
|
监控 前端开发 JavaScript
前端技术探索:构建高效、可维护的Web应用
【10月更文挑战第23天】前端技术探索:构建高效、可维护的Web应用
29 0