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运行结果
相关文章
|
19天前
|
前端开发 开发者 容器
彻底学会CSS grid网格布局
【4月更文挑战第1天】 彻底学会CSS grid网格布局
16 0
|
3月前
|
前端开发 JavaScript
Vue中使用纯CSS实现全屏网格加渐变色背景布局
Vue中使用纯CSS实现全屏网格加渐变色背景布局
74 0
|
3月前
|
设计模式 前端开发 开发者
css 三栏布局的实现
css 三栏布局的实现
34 0
|
10天前
|
前端开发 开发者 容器
【掰开揉碎】详解 CSS3 Grid 布局
【掰开揉碎】详解 CSS3 Grid 布局
N..
|
29天前
|
前端开发 容器
DIV+CSS网页布局
DIV+CSS网页布局
N..
8 0
|
1月前
|
前端开发 UED 开发者
探索前端开发中的CSS布局技巧
本文将介绍一些在前端开发中常用的CSS布局技巧,包括盒模型、浮动布局、弹性布局和栅格系统等。通过学习这些技巧,开发者可以更加灵活地控制页面的布局,提升用户体验和界面的美观性。
|
1月前
|
前端开发 容器
CSS之弹性盒子Flexible Box
CSS之弹性盒子Flexible Box
|
1月前
|
前端开发 容器
CSS弹性盒总结
CSS弹性盒总结
26 0
|
1月前
|
前端开发 JavaScript 开发者
编程笔记 html5&css&js 014 网页布局框架
编程笔记 html5&css&js 014 网页布局框架
|
1月前
|
前端开发 开发者
编程笔记 html5&css&js 013 HTML布局
编程笔记 html5&css&js 013 HTML布局