CSS-弹性布局1-基础与主轴

简介: 1、弹性盒子模型弹性盒子是 CSS3 的一种新的布局模式,是一种当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式。引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间.2、模型启用使用display:flex即可将该容器指定为"flex"布局。

1、弹性盒子模型

弹性盒子是 CSS3 的一种新的布局模式,是一种当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式。引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间.

2、模型启用

使用display:flex即可将该容器指定为"flex"布局。需要注意的是,容器设置为:"flex"布局后,子元素的"float","clear","vertical-align"属性将失效。

3、基本感念

属性 说明
容器 设置了display:flex属性的元素,被称为容器。
项目 容器内的子元素被称为项目(item)
主轴 水平轴线(main axis)
交叉轴 垂直的轴线(cross axis)
main start 主轴的开始位置叫main start
main end 主轴的结束位置叫main end
cross start 交叉轴的开始位置叫做cross start
cross end 交叉轴的结束位置叫cross end
main size 单个项目占据的主轴空间叫做main size
cross size 单个项目占据的交叉轴空间叫做cross size
image.png

4、基本属性

属性 说明
flex-direction 主轴的方向,确定弹性子元素排列方式
flex-wrap 当弹性子元素超出弹性容器范围如何换行
flex-flow flex-direction + flex-wrap的简写
justify-content 主轴上的对齐方式
align-items 交叉轴上的对齐方式
align-content 交叉轴有空白时,交叉轴的对齐方式

4.1 flex-direction

主轴的方向,确定弹性子元素排列方式

属性值 说明
row (默认值) 水平从左到右排列
row-reverse 水平从右到左排列
column 垂直从上到下排列
column-reverse 垂直从下到上排列
image.png

4.2 flex-wrap

当弹性子元素超出弹性容器范围如何换行

属性值 说明
nowrap (默认值) 不换行
wrap 换行,第一行在上面
wrap-reverse 换行,第一行在下方

源代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>flex-wrap</title>
    <style type="text/css">
    .wrap{
        width: 200px;
        display: flex;
        flex-wrap: nowrap;
        height: auto;
    }
    div{
        width: 30px;
        height: 30px;
        border:1px solid red;
        margin:5px;
    }
    </style>
</head>
<body>
    <div class="wrap">
        <div>1</div>
        <div>2</div>
        <div>3</div>
        <div>4</div>
        <div>5</div>
        <div>6</div>
    </div>
</body>
</html>

nowrap 运行结果:

nowrap运行结果

wrap运行结果:
wrap运行结果

wrap-reverse运行结果:
wrap-reverse运行结果

4.3 flex-flow

该属性是flex-direction和flex-wrap的缩写。

4.4 justify-content

属性值 说明
flex-start(默认值) 左对齐
flex-end 右对齐
center 居中
space-between 两端对齐,元素之间的间隔都相等
space-around 每个元素的两侧都相等

** flex-start运行结果**


flex-start运行结果

** flex-end运行结果**


flex-end运行结果

** center运行结果**
center运行结果

** space-between运行结果**


space-between运行结果

** space-around运行结果**
space-around运行结果
相关文章
|
25天前
|
前端开发 算法 Java
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
69 0
|
25天前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
Flex 布局 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。 一、Flex 布局是什么? Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。
187 1
|
5月前
|
前端开发
用 CSS Grid 轻松构建复杂布局
用 CSS Grid 轻松构建复杂布局
281 83
|
4月前
|
Web App开发 前端开发 数据可视化
用 CSS Grid 实现高效布局的 3 个实战技巧
用 CSS Grid 实现高效布局的 3 个实战技巧
|
前端开发 容器
使用 CSS Grid 布局实现响应式设计
【10月更文挑战第1天】使用 CSS Grid 布局实现响应式设计
378 99
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
|
12月前
|
前端开发 JavaScript 开发者
掌握 CSS 弹性布局(Flexbox):构建复杂页面布局的高效秘籍与实战案例
CSS弹性布局(Flexbox)是现代网页设计中构建复杂页面布局的高效工具。本文将深入浅出地介绍Flexbox的核心概念、使用技巧及实际应用案例,帮助读者快速掌握这一强大布局方法。
|
前端开发 容器
前端技术分享:利用CSS Grid布局实现响应式设计
【10月更文挑战第1天】前端技术分享:利用CSS Grid布局实现响应式设计

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
  • 5
    React 中如何安装与使用 Tailwind CSS
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
  • 9
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation