css之Flex弹性布局(父项常见属性)

news2024/10/6 18:36:15

文章目录

  • 🐕前言:
    • 🏨定义flex容器 display:flex
    • 🏨在flex容器中子组件进行排列
      • 🪂行排列 flex-direction: row
      • 🪂将行排列进行翻转排列 flex-direction: row-reverse
      • 🏅按列排列 flex-direction: column;
      • 🏅按列排列 flex-direction: column-reverse
    • 🪀flex容器内的默认宽度
      • 🏅默认宽度 width: max-content
      • 🏅默认宽度 width: min-content
      • 🏅自定义宽度 flex-basis: 100px
      • 🎀平均分配宽度 flex-grow: 1
      • 🐕缩小组件逻辑 flex-shrink: 1
      • 简写:flex:grow shrink basis
    • 🎀组件交叉轴对齐方式(行高)align-items:stretch
    • 🎀组件水平轴(主轴)对齐方式 justify-content:flex-start
    • 🎀组件换行 flex-wrap:nowrap(放不下了,又不想缩小宽度,想换行放)
    • 🎀flex多轴之间的对齐 align-content: normal

🐕前言:

本篇博客会讲解css中的弹性布局的常见用法,
在这里插入图片描述

🏨定义flex容器 display:flex

将一个div定义成flex容器,它分为主轴与交叉轴(其中左右边对应主轴的start、end,上下边对应交叉轴的start、end

display:flex

在这里插入图片描述

🏨在flex容器中子组件进行排列

🪂行排列 flex-direction: row

flex-direction: row

在这里插入图片描述

在这里插入图片描述

🪂将行排列进行翻转排列 flex-direction: row-reverse

flex-direction: row-reverse

在这里插入图片描述
注意:由于翻转时主轴的start、end会进行对调,故紧挨着右边界

在这里插入图片描述

🏅按列排列 flex-direction: column;

flex-direction: column;

注意:按列排列时主轴的start、end会变成竖轴
在这里插入图片描述

在这里插入图片描述

🏅按列排列 flex-direction: column-reverse

注意:按列排列时主轴的start、end会变成竖轴,由于翻转时主轴的start、end会进行对调,故紧挨着下边界

flex-direction: column-reverse;

在这里插入图片描述
在这里插入图片描述

🪀flex容器内的默认宽度

在这里插入图片描述

在flex容器中哪怕你的子组件是div(块元素),也都会加上默认宽度(width:max-content)
在这里插入图片描述

🏅默认宽度 width: max-content

这个宽度就是你内容的宽度,一直不换行
在这里插入图片描述
下面还有一种情况:

🏅默认宽度 width: min-content

但是如果你的内容长度超过了页面大小(就是内容跑到显示外面去了),那么它默认长度就会发生改变,变成(width: min-content),它的长度是内容中最长单词的长度
在这里插入图片描述

🏅自定义宽度 flex-basis: 100px

假设父元素宽度500px,子组件自定义宽度50px,那么还有200px空余空间,
如果想平均分配这200px:(为了理解,这里省略了样式修饰)

.bar{
	display: flex;/* 将标签变为flex容器 */
	width: 500px;
	.item{/* 子组件 */
		flex-basis: 50px;
	}

在这里插入图片描述

🎀平均分配宽度 flex-grow: 1

在这里插入图片描述
这个是怎么计算的呢
(50px+ 1y )*5=500px ,得出y=50px的空余空间,故每个元素可以分到50px空余
在这里插入图片描述

🐕缩小组件逻辑 flex-shrink: 1

当组件的长度之和超过容器长度,默认平均长度,而不会超出页面
在这里插入图片描述
在这里插入图片描述

简写:flex:grow shrink basis

等分

flex:1 0px;

🎀组件交叉轴对齐方式(行高)align-items:stretch

默认的:(以组件中最大的行高定义)

align-items: stretch;

统一在交叉轴起点对齐

align-items: flex-start;

统一在交叉轴终点对齐

align-items: flex-end

统一在交叉轴居中对齐

align-items: center;

基于文字的基线对齐

align-items: baseline;

🎀组件水平轴(主轴)对齐方式 justify-content:flex-start

默认主轴对齐方式(以start为起始位置):

justify-content:flex-start;

以end终点对齐:

justify-content:flex-end;

水平居中:

justify-content:center;

我们设置导航栏:让组件紧挨着左右两边,中间的距离是相等的

justify-content:space-between;

我们设置导航栏:让组件比较均匀的分布,中间的距离是两边距离的两倍 2:1

justify-content:space-around;

我们设置导航栏:让组件比较均匀的分布,中间的距离等于两边的距离 1:1

justify-content:space-evenly;

🎀组件换行 flex-wrap:nowrap(放不下了,又不想缩小宽度,想换行放)

默认不换行:

flex-wrap:nowrap;

在这里插入图片描述

换行:

flex-wrap:wrap;

在这里插入图片描述

🎀flex多轴之间的对齐 align-content: normal

默认:不对齐啥样子,就是啥样子

align-content: normal

从交叉轴start对齐、从交叉轴end对齐

align-content: flex-start;
align-content: flex-end;

竖着看:首尾元素距离是中间元素之间距离的一半 1:2

align-content: space-around

在这里插入图片描述

竖着看:首尾元素没有空隙,中间距离平均

align-content: space-between;

在这里插入图片描述

竖着看:首尾元素没有空隙,中间距离平均

align-content: space-evenly;

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1121573.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

postman自动化运行接口测试用例

做过接口测试的人,应该都知道postman ,我们在日常的时候都可以利用postman做接口测试,我们可以把接口的case保存下来在collection里面,那么可能会有这样的需求,我们怎么把collection的用例放到jenkins中定时执行呢&…

C++STL的迭代器(iterator)

一、定义 迭代器是一种检查容器内元素并且遍历容器内元素的数据类型。 【引用自:C迭代器(iterator)_c iterator_NiUoW的博客-CSDN博客】迭代器是一个变量,相当于容器和操纵容器的算法之间的中介。C更趋向于使用迭代器而不是数组下…

【GESP】2023年06月图形化三级 -- 自幂数判断

文章目录 自幂数判断【题目描述】【输入描述】【输出描述】【参考答案】其他测试用例 自幂数判断 【题目描述】 自幂数是指N位数各位数字N次方之和是本身,如153是3位数,其每位数的3次方之和是153本身,因此153是自幂数,1634是4位数…

STM32进行LVGL裸机移植

本文的移植参考的是正点原子的课程《手把手教你学LVGL图形界面编程》 基于该课程和《LVGL开发指南_V1.3》“第二章 LVGL 无操作系统移植”,然后结合自身的实际情况进行整理。 先根据自己的习惯,创建基础的单片机工程,然后在APP业务层和DRIVE…

cdm解决‘ping‘ 或者nslookup不是内部或外部命令,也不是可运行的程序或批处理文件的问题

当我们在执行cmd时,会出现不是内部或外部命令,也不是可运行的程序的提示。 搜索环境变量 点开高级 >> 环境变量 打开Path,看是否在Path变量值中存在以下项目: %SystemRoot%/system32; %SystemRoot%; %SystemRoot%/Syste…

【JVM系列】- 探索·运行时数据区的私有结构

探索运行时数据区的私有结构 文章目录 探索运行时数据区的私有结构运行时数据区的结构与概念认识线程了解守护线程和普通线程JVM系统线程 程序计数器(PC寄存器)概述PC寄存器的特点PC寄存器的作用 透过案例了解寄存器为什么需要用PC寄存器来存放字节码的指…

C语言基础-循环与数组

目录 循环 while 循环: for 循环: do while 循环: 中断循环: break continue: 数组 数组:用来装一组数的类型。声明形式如下: 定义数组类型变量: 下标:即各元素…

初出茅庐的小李博客之ESP8266获取自己B站粉丝数据

获取方式 ESP8266发起HTTP请求解析json数据 获取粉丝API: https://api.bilibili.com/x/relation/stat?vmid349513188API浏览器测试返回结果 {"code": 0,"message": "0","ttl": 1,"data": {"mid": 349513188, …

Python+Appium实现自动化测试

一、环境准备 1.脚本语言:Python3.x IDE:安装Pycharm 2.安装Java JDK 、Android SDK 3.adb环境,path添加E:\Software\Android_SDK\platform-tools 4.安装Appium for windows,官网地址 Redirecting 点击下载按钮会到GitHub的…

【safetensor】介绍和基础代码

Hugging Face, EleutherAI, StabilityAI 用的多 介绍 文件形式 header,体现其特性。如果强行将pickle或者空软连接 打开,会出现报错。解决详见:debug 连接到其他教程结构和参数 安装 with pip:Copied pip install safetensors with con…

阶段六-Day05-MyBatis3

一、多表查询(面试题) 1. 介绍 多表查询是在企业中必不可少的,无论多么简单的项目里通常会出现多表查询的操作。因为只要是关系型数据库,在设计表时都需要按照范式进行设计,为了减少数据冗余,都会拆成多个…

String、StringBuffer、StringBuilder 适合的应用场景

文章目录 String适用场景示例代码 StringBuffer适用场景示例代码 StringBuilder适用场景示例代码 性能比较总结 🎉欢迎来到Java学习路线专栏~String、StringBuffer、StringBuilder 适合的应用场景 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页&#xff…

《视觉SLAM十四讲》公式推导(二)

CH3-5 四元数表示旋转 三维空间中任意点均可用一个纯虚四元数表示即 p [ 0 , v ] T \boldsymbol{p}[0,\boldsymbol{v}]^T p[0,v]T,经一个单位四元数 q \boldsymbol{q} q的旋转后,得到 p ′ \boldsymbol{p} p′,则 p ′ q p q − 1 (3-5-1)…

STM32F4_中英文显示

目录 1. 液晶显示逻辑 2. 汉字显示原理 3. 实验程序 3.1 main.c 3.2 text.c 3.3 text.h 3.4 fontupd.c 3.5 fontupd.h 1. 液晶显示逻辑 字符编码: 由于计算机只能识别 0 和 1,文字也只能以 0 和 1 的形式在计算机里存储,所以我们需要…

算法通过村第十六关-滑动窗口|青铜笔记|滑动很简单

文章目录 前言滑动窗口的基本思想入门题目练习子数组最大平均数最长连续递增序列 总结 前言 提示:我宁愿做自己,做卑微的自己,也不愿做别人,无论那会多么快乐。 --《美丽新世界》 我们在数组和链表的部分就已经接触到了双指针的思…

IMX6ULL开发——第一个驱动程序

实现第一个应用程序&#xff1a;在IMX6ULL开发板上运行驱动程序hello_drv_test hello_drv_test #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <stdio.h> #include <string.h>/** ./hel…

生产者消费者模式(c++实现)

生产者消费者模式思路就是&#xff1a;一批专门生产资源的线程 和一批专门处理资源的线程以及一个线程安全的任务队列组成的 。并且当任务队列满的时候阻塞生产线程&#xff0c;任务队列为空的时候阻塞消费线程。 要实现一个生产者消费者队列 1。需要实现线程同步&#xff0c;…

react的setState做了什么

1、为什么需要setState setState的作用是帮助我们更改数据的同时并且通知视图进行渲染。因为React并不会绑定视图和state&#xff0c;需要我们手动去更新视图。 2、setState什么时候是同步的&#xff0c;什么时候是异步的 setState这个方法在调用的时候是同步的&#xff0c;…

如果面试问到你redis的常用数据类型,你怎么和面试官聊上十分钟?

最近组长把一些简历推到我这边让我帮他面试几份&#xff0c;问到这种基础题目时收到的回答总是不太理想 1、最简单的回答&#xff1a; Redis存储的是key-value结构的数据&#xff0c;其中key是字符串类型&#xff0c;value有5种常用的数据类型&#xff1a; 字符串 string哈希 …

为什么spring默认采用单例bean

概 述 熟悉 Spring开发的朋友都知道 Spring 提供了 5种 scope&#xff0c;分别是&#xff1a; singleton: 单例模式&#xff0c;当spring创建applicationContext容器的时候&#xff0c;spring会欲初始化所有的该作用域实例&#xff0c;加上lazy-init就可以避免预处理&#xf…