flex布局——flex-direction属性

2023-11-12

1.flex布局原理

1)flex是flexible Box的缩写,意为“弹性布局”,用来为盒状模型提供最大的灵活性,任何一个容器都可以指定为flex布局。
当我们为父盒子设为flex布局以后,子元素的float、clear、和vertical-align属性将失效。
2)采用flex布局的元素,称为flex容器,简称"容器",它的所有子元素自动成为容器成员,称为flex项目(flex item),简称"项目"。
3)flex布局一定要给父盒子添加display: flex才有效果
总结:通过给父盒子添加flex属性,来控制子盒子的位置和排列方式。

2.flex布局父项常见属性

flex-direction: 设置主轴的方向
justify-content:设置主轴上的子元素排列方式
flex-wrap: 设置子元素是否换行
align-items:设置侧轴上的子元素的排列方式(单行)
align-content: 设置侧轴上的子元素的排列方式(多行)
flex-flow: 符合属性,相当于同时设置了flex-direction和flex-wrap
今天我们先学习flex-direction这个属性

flex-direction设置主轴方向

a.主轴与侧轴
在flex布局中,是分为主轴和侧轴两个方向,同样的叫法有:行和列、x轴和y轴
默认主轴方向就是x轴方向,水平向右
默认侧轴方向就是y轴方向,水平向下
在这里插入图片描述
b.属性值
flex-direction属性决定主轴的方向
注意:主轴和侧轴是会变的,就看flex-direction设置谁为主轴,剩下的就是侧轴,而我们的子元素是跟着主轴来排列的
(1) flex-direction: row 默认值子元素从左到右排列
Html代码

<body>
    <div>
        <!--在flex布局中所有元素都有高度和宽度,不用再转化了 -->
        <span>1</span>
        <span>2</span>
        <span>3</span>
        <span>4</span>
    </div>
</body>

CSS代码

<style>
        div {
            display: flex; /* flex布局中一定要给父元素加这个 */
            width: 800px;
            height: 400px;
            background-color: aquamarine;
            /* 默认的主轴时x轴,行 row, 那么y轴就是侧轴 */
            /* 默认元素是跟着主轴来排列的 */
             flex-direction: row;
        }
        
        div span {
            width: 150px;
            height: 75px;
            background-color: antiquewhite;
            margin-right: 2px;
        }
    </style>

打开浏览器
在这里插入图片描述
注意:这里黄盒子之间有空隙是因为我给span标签设置margin-right
(2) flex-direction: row-reverse 子元素从右到左排列
Html代码

<body>
    <div>
        <span>1</span>
        <span>2</span>
        <span>3</span>
        <span>4</span>
    </div>
</body>

CSS代码

<style>
        div {
            display: flex;
            width: 800px;
            height: 400px;
            background-color: aquamarine;
            /*  翻转 */
             flex-direction: row-reverse; 
           
        }
        
        div span {
            width: 150px;
            height: 75px;
            background-color: antiquewhite;
            margin-right: 2px;
        }
    </style>

打开浏览器
在这里插入图片描述
注意:子盒子都反向排列了,1好盒子没有和绿色的盒子边重合是因为我给span标签加了margin-right: 2px;
(3) flex-direction: column 子元素从上到下排列
Html代码

<body>
    <div>
        <span>1</span>
        <span>2</span>
        <span>3</span>
        <span>4</span>
    </div>
</body>

CSS代码

<style>
        div {
            display: flex;
            width: 800px;
            height: 400px;
            background-color: aquamarine;
            /* 我们可以把主轴设置为y轴 column, 那么x轴就成了侧轴 */
             flex-direction: column 
        }
         div span {
            width: 150px;
            height: 75px;
            background-color: antiquewhite;
            margin-right: 2px;
        }
</style>

打开浏览器
在这里插入图片描述
注意:这里黄盒子之间没有空隙是因为我没有给span标签设置margin-bottom
(4) flex- direction: column-reverse 子元素从右到左排列
Html代码

<body>
    <div>
        <span>1</span>
        <span>2</span>
        <span>3</span>
        <span>4</span>
    </div>
</body>

CSS代码

<style>
        div {
            display: flex;
            width: 800px;
            height: 400px;
            background-color: aquamarine;
            /* 翻转 */
            flex-direction: row-reverse;
        }
         div span {
            width: 150px;
            height: 75px;
            background-color: antiquewhite;
            margin-right: 2px;
        }
</style>

打开浏览器
在这里插入图片描述
注意:子盒子都反向排列了
好了,今天flex布局的flex-direction属性讲完了,明天继续讲flex布局的justify-content属性和align-items属性和align-content属性,希望大家点赞关注哟,多多支持小董,谢谢!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

flex布局——flex-direction属性 的相关文章

  • 仅部分页面滚动的 html 布局

    我想创建一个分为 3 部分的页面布局 一列具有固定宽度 其中包含两行具有固定高度 另一个具有固定宽度的列 可能包含多个项目 超出视图范围 我正在寻找一种方法 使页面滚动仅影响项目列 以便屏幕的左侧 第一列 保持在视图中 下面是布局的示例图像
  • bootstrap navbar-static-top 菜单分成两行

    我遇到了引导导航栏的问题 我使用 navbar static top 制作了菜单 起初一切都很好 当菜单被展开并添加了一些项目时 现在随着折叠之前的宽度 它扩展到两行 看起来很糟糕 在 CSS bootstrap 中进行了更深入的挖掘 但没
  • 简单的 svg css 进度圈

    我正在尝试寻找一种方法来实现没有动画的简单进度圈 静态 我发现的示例具有非常不同的百分比偏移量 如下例所示 如何以这样的方式制作进度圈 如果我提供偏移量为 50 那么它恰好是 50 半填充 u absoluteCenter position
  • React Native + Redux:最好和首选的导航是什么?

    我想将 Redux 用于 React Native 目前我没有设置数据管理 所以index ios js有以下内容 renderScene route navigator this navigator navigator return
  • 提交表单而不重定向

    我想提交表单而不重定向页面 表单已提交给第三方 因此我无法在 php ini 中进行更改 我想做的是 无需访问第三方页面即可提交 成功提交后显示警报 目前我正在使用隐藏的 iframe 和表单目标来隐藏 iframe 但我不满意 有没有更好
  • 防止用户在 javascript 中离开我的页面

    在我的表单中 我有一个不显眼的情态 如果用户单击我的 离开图像 我会打开模式并询问他是否想离开 如果用户同意 JavaScript Jquery 是否可以 停止 重新加载或页面更改以显示我的模式并继续操作 重新加载 下一页 上一页等 I t
  • 避免在 Flutter Web 插件包之外使用纯 Web 库

    我正在构建一个 Flutter 应用程序 并尝试在网络上运行 其中一部分包含一些特定于网络的代码 import dart html as html import package flutter foundation dart class D
  • 移动时如何将图像保留在另一图像后面?

    Edit Here https jsfiddle net 33cL1qos 6 我可以在选择时将其保留在后面 但由于某种原因它现在不可拖动 我可能做错了什么 我能够从计算机上传图像 然后移动图像 我的问题 当我选择图像时 它会向前弹出 直到
  • 如何重定向到WEB-INF文件夹中的JSP

    我有一个带有 NAV 的 jsp 其中还包含 UL 和以下元素 如下面的代码所示
  • 仅在 Windows Chrome 上使用变换比例会导致文本模糊

    我遇到了一个关于 CSS 转换的非常令人沮丧的问题scale 我有一个文本块 我想在悬停时将其缩放 105 但它导致文本模糊 但仅限于 Windows 版本的 Chrome 我发现这个问题 https stackoverflow com q
  • 在网络上使用多种颜色的背景

    抱歉 如果标题有点误导 我想做的是用真正的浅灰色覆盖索引页面的背景 除了显示我的内容的部分 div class col sm 1 div div class col sm 8 div div class col sm 3 div 我希望 c
  • FullCalendar 重复事件创建重复项

    我正在为我的新网站实现一个日历 我从后端应用程序检索事件并使用 fullcalendar 在模式中显示结果 我还使用 fullcalendar 的重复功能 https fullcalendar io docs recurring event
  • Bootstrap 切换导航项在单击后保持打开状态

    我有简单的 Bootstrap 3 切换导航 ul class nav navmenu nav clearfix li class navmenu brand dropdown clearfix a href class dropdown
  • Shared Web Workers 是否会在单页重新加载、链接导航中持续存在

    共享网络工作者 http www whatwg org specs web apps current work shared workers introduction旨在允许来自同一站点 来源 的多个页面共享单个 Web Worker 但是
  • 为什么 Chrome 中存在 Document.prototype.getElementsByName?

    我所知 getElementsByName是一个定义在中的函数HTMLDocument and HTMLDocument继承自Document and Document继承自Node 那为什么我能看到Document prototype g
  • 如何从网上获取源代码?

    我正在尝试从 Web 获取 HTML 源代码 我尝试这样做 u new URL url URLConnection con u openConnection con setRequestProperty User Agent Mozilla
  • 使用 div 标签定位元素

    div class HeaderLink div class HeadPanelElement a href Blog a div div
  • 无法使用 Jsoup HTML 解析器 Java 实现某些功能

    我无法使用 Jsoup Java 库解析以下场景的一些文本 1 This is b My Text b some other b b text as well b b b non empty tag1 b other text 预期输出 s
  • 图像右边缘淡入/模糊 CSS

    我有一个简单的 CSS 相关问题 如何获得如图所示的右端模糊 淡入淡出 两种方法 让我们这样做 1 使用盒子阴影 浏览器兼容性 IE 9 为盒子阴影 http caniuse com feat css boxshadow 放置适当box s
  • 从 HTML 文件输入中删除“所有文件”选项

    我在用

随机推荐

  • javaScript基础面试题 --- new操作符具体做了什么?

    当我们使用new操作符调用函数时 背后发生了很多事情 这里是简单的new操作符的行为 创建一个新的空对象 将这个空对象的原型链接到构造函数的prototype对象 使用这个新对象作为上下文 即this的值 调用该构造函数 如果构造函数返回一
  • Yii Framework 开发教程(25) 数据库-Query Builder示例

    上一篇介绍PHP使用DAO 数据库访问对象接口 访问数据库的方法 使用DAO需要程序员编写SQL语句 对于一些复杂的SQL语句 Yii提供了Query Builder来帮助程序员生成SQL语句 Query Builder提供了一中面向对象的
  • Windows7安装docker以及使用docker安装centos7

    目录 一 WIN7安装DOCKER 二 docker安装centos7 1 查看可用的 CentOS 版本 2 拉取指定版本的 CentOS 镜像 3 查看本地镜像 4 运行容器 并且可以通过 exec 命令进入 CentOS 容器 5 安
  • STM32内部参考电压+DMA精准采集电池电压

    最近项目又遇到了电池电压采集 锂电池的电压范围是4 2到2 8一般 当锂电池低于3 3V时 单片机供电电压会小于3 3V 那么电池电压参考计算4096就不能对应3 3 所以必须采用内部参考电压 我项目中用到的是RP104N331 LDO 实
  • openwrt上nginx启动报错nginx: [emerg] getpwnam("www") failed

    检查nginx的配置文件 etc nginx nginx conf 里面配置里确实有这一项 user nobody nogroup user www www worker processes 2 系统的用户又没有www这个用户 这就尴尬了
  • 本地缓存技术分享

    本地缓存 缓存分为本地缓存与分布式缓存 本地缓存为了保证线程安全问题 一般使用ConcurrentMap的方式保存在内存之中 而常见的分布式缓存则有Redis MongoDB等 一致性 本地缓存由于数据存储于内存之中 每个实例都有自己的副本
  • 深度学习&强化学习&进化计算 入门资源整理

    深度学习 强化学习 进化计算 入门资源整理 深度学习 在线课程 在线书籍 学习Python 强化学习 在线课程 在线书籍 更多资源 进化计算 后记 深度学习 在线课程 深度学习是机器学习领域的一个分支 想要入门深度学习 最好先对机器学习的一
  • 学会了,不会ps也能更换自己的证件照底色,制作自己的证件照

    证件照经常会由于背景色与要求不符而不能用 再去拍一组浪费时间和金钱 如何省时省力的把照片背景色修改成我们所需要的底色呢 说到修改照片背景色 首先想到大家常用的证件照 根据不同用处会要求 白 蓝 红 底色 在过去大家可能需要去图片社重新照 或
  • [631]一行js代码识别Selenium+Webdriver

    文章目录 一行js代码识别Selenium Webdriver 如何正确移除Selenium中的 window navigator webdriver 最新版 附一些网站检测selenium的示例 driver execute script
  • ESP32 SIM800L:发送带有传感器读数的文本消息(SMS警报)

    在这个项目中 我们将使用T Call ESP32 SIM800L模块创建一个SMS通知系统 当传感器读数高于或低于特定阈值时 该模块会发送SMS 在此示例中 我们将使用DS18B20温度传感器 并在温度高于28 C时发送短信 一旦温度降低到
  • uniapp使用scroll-view实现左右,上下滑动

    uniapp使用scroll view实现左右 上下滑动 阐述 我们在项目中往往都能遇到实现左右滑动跟上下滑动的需求 不需要安装better scroll uniapp 自带的scroll view 就可以实现了 实现左右滑动
  • 开源项目,源码

    GitHub 优秀的 Android 开源项目 转自 http blog csdn net shulianghan article details 18046021 主要介绍那些不错个性化的View 包括ListView ActionBar
  • java基础03:final

    说明 final是java的一个关键字 是最终的意思 final 表示 最后的 最终的 含义 变量一旦赋值后 不能被重新赋值 被 final 修饰的实例变量 就是已经实例化的对象 必须显式指定初始值 final 修饰符通常和 static
  • Flash钓鱼->CS上线(免杀过火绒、360等)

    先看结果 访问钓鱼页面 点击立即升级即把马儿下载下来了 这个马儿是rar压缩的 做成的rar解压自启动 所以是个exe的文件 然后这里为了像一点 把图标给改了 双击运行 查看效果 首先CS是没东西的 解压路径现在也是没东西的 这里我把解压路
  • C#值参数和引用参数

    C 值参数和引用参数 一 值参数 未用ref或out修饰符声明的参数为值参数 使用值参数 通过将实参的值复制到形参的方式 把数据传递到方法 方法被调用时 系统做如下操作 在栈中为形参分配空间 复制实参到形参 值参数的实参不一定是变量 它可以
  • 几年的Unity学习总结

    stream 其中类Stream为抽象类 由此有三个派生类 需要引入命名空间 using System IO MemoryStream 对内存进行读取与写入 BufferedStream 对缓冲器进行读取 写入 FileStream 对文件
  • access统计班级人数_使用ACCESS查询统计分数段人数

    不少人都知道使用电子表格 excel 进行分数段统计 使用access的人也可以用它设计查询进行分数段人数统计 这里假设你有一个access表 也可以是基表的查询 名叫tblScore 当然可以是中文名称 只不过代码内也要作相应修改 表内是
  • 大数据挖掘简介

    大数据挖掘涉及如下的课程 机器学习 统计学 人工智能 数据库等 但是更多的注重如下的特性 1 可扩展性 Scalability 大数据 2 算法和架构 3 自动的处理大数据 我们需要学习挖掘不同类型的数据 1 高维的数据 2 图数据 3 无
  • Vue技术 v-cloak指令(用于在 Vue 实例加载和编译之前隐藏元素)

    1 v cloak 指令的用法 v cloak 指令通常与 CSS 配合使用 用于在 Vue 实例加载和编译之前隐藏元素 通过给元素添加 v cloak 属性 然后在 CSS 中定义对应的样式 可以确保在 Vue 实例加载完成前 该元素的内
  • flex布局——flex-direction属性

    1 flex布局原理 1 flex是flexible Box的缩写 意为 弹性布局 用来为盒状模型提供最大的灵活性 任何一个容器都可以指定为flex布局 当我们为父盒子设为flex布局以后 子元素的float clear 和vertical