Flex布局——详解

1.定义

flex布局也叫弹性布局 ,比float浮动布局更加灵活,不会造成脱标,若要对某个标签操作,则对其的父级标签加flex;Flex布局就是将一个盒子的字盒子变为弹性盒子 ,然后通过主轴和交叉轴对其进行排列;在flex布局中,替换元素(display:block.....)若有固定宽高,则flex容器不会对齐进行压缩。

1.1 代码示例

html 复制代码
<style>
    /*只用在父级的css属性加flex,盒子变成弹性容器,子级标签(弹性盒子)会沿着主轴方向自动缩放,水平方向为主轴,垂直方向为侧轴*/
    .box {
		...
        display:flex; 
    }
</style>
<div class="box">
    <div></div>
    <div></div>
</div>

2.布局属性

2.1 代码示例

html 复制代码
<style>
    .box {
        display:flex;
        /*主轴的起点在左边,侧轴的起点在上面*/
        justify-content:center;/*弹性盒子沿主轴居中排列*/
        justify-content:space-between;/*沿主轴均匀排列,空白部分间距(父级剩余的尺寸)只均分在弹性盒子之间*/
       	justify-content:space-around;/*沿主轴均匀排列,空白部分均分在弹性盒子两侧,盒子间的间距是两端间距的两倍*/
        justify-content:space-evenly;/*沿主轴均匀排列, 各个间距都相等*/
        
        /*主轴上的排列方式侧轴也可以用,作用对象为多个flex项目*/
        align-content:space-between;/*沿侧轴均匀排列,空白部分间距(父级剩余的尺寸)只均分在弹性盒子之间*/
        
        /*作用对象为单个flex项目*/
        align-items:strerch;/*弹性盒子沿侧轴拉伸至铺满容器(前提是弹性盒子没有设置高度)*/
        align-items:center;/*沿侧轴居中排列,只影响侧轴排列,不影响主轴排列,需要有高度才能实现*/
        
        flex-direction:column;/*修改主轴方向,使主轴方向改为从上到下*/
        
        flex-wrap:wrap;/*让弹性盒子换行并保留原本的宽*/
        
        flex:1;/* 是flex-grow/shrink/basis的简写, 等同于 flex:1 1 0,使元素在容器中平均分配多余空间 */
        flex-grow: 1;/* 可以使盒子动态填充该盒子所在内容区域 ,一般用于字盒子中*/ 
        
        heigth:300px;
        border:1px solid black;
    }
    .box div:nth-child(n) {
        align-self:center;/*选中第n个弹性盒子沿侧轴方向居中*/
        flex:1;/*第n个盒子沿主轴方向拉伸空白部分的1倍,可以控制主轴方向的尺寸*/
    }
    .box div {
        width:200px;
       	height:100px;
    }
</style>
<div class="box">
    <div></div>
    <div></div>
</div>
相关推荐
程序员猫哥_6 分钟前
HTML 生成网页工具推荐:从手写代码到 AI 自动生成网页的进化路径
前端·人工智能·html
龙飞057 分钟前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
我爱加班、、12 分钟前
Websocket能携带token过去后端吗
前端·后端·websocket
AAA阿giao12 分钟前
从零拆解一个 React + TypeScript 的 TodoList:模块化、数据流与工程实践
前端·react.js·ui·typescript·前端框架
杨超越luckly19 分钟前
HTML应用指南:利用GET请求获取中国500强企业名单,揭秘企业增长、分化与转型的新常态
前端·数据库·html·可视化·中国500强
hedley(●'◡'●)1 小时前
基于cesium和vue的大疆司空模仿程序
前端·javascript·vue.js·python·typescript·无人机
qq5_8115175151 小时前
web城乡居民基本医疗信息管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
前端·vue.js·spring boot
百思可瑞教育1 小时前
构建自己的Vue UI组件库:从设计到发布
前端·javascript·vue.js·ui·百思可瑞教育·北京百思教育
百锦再1 小时前
Vue高阶知识:利用 defineModel 特性开发搜索组件组合
前端·vue.js·学习·flutter·typescript·前端框架
CappuccinoRose1 小时前
JavaScript 学习文档(二)
前端·javascript·学习·数据类型·运算符·箭头函数·变量声明