Flexbox – 对齐和分配空间的现代方式

flexbox – 对齐和分配空间的现代方式

第 14 讲:flexbox – 对齐和分配空间的现代方式

嘿那里!准备好深入研究 css 中最酷、最强大的工具之一了吗?今天,我们将探索 flexbox。如果您曾经在以简洁且响应迅速的方式对齐项目或分配空间方面遇到困难,那么 flexbox 是您最好的新朋友。

1.什么是 flexbox?

flexbox(灵活框布局)是一种一维布局系统,允许您控制容器内元素的对齐、间距和分布 – 即使这些元素的大小未知或动态。

将 flexbox 视为一个工具箱,用于创建可以根据可用空间拉伸、收缩或对齐的布局。

2.魔法从显示开始:flex

要开始使用 flexbox,您只需在容器上设置 display: flex 即可。一旦你这样做了,该容器的所有直接子代都会变成弹性项目,并且它们将立即开始表现不同。

item 1
item 2
item 3
.flex-container {    display: flex;}

现在,.flex-container 中的所有项目都是 flex 项目,可以轻松操作。

3.弯曲方向 – 我们应该走哪条路?

默认情况下,flexbox 将项目排列成行(水平),但如果您希望它们排列成列(垂直)怎么办? flexbox 通过 flex-direction 属性为您提供完全控制。

:在水平行中对齐项目(这是默认值)。:将项目堆叠在垂直列中。row-reverse:与 row 相同,但项目的顺序相反。column-reverse:与column相同,但项目以相反的顺序堆叠。

.flex-container {    display: flex;    flex-direction: column;}

现在,物品将垂直堆叠!

4.证明内容合理性 – 传播事物

假设您有三件物品,并且您想将它们均匀地分布在容器中。这就是 justify-content 派上用场的地方。

flex-start:项目与容器的开头对齐(默认)。center:项目居中。space- between:项目均匀分布,第一个项目在开始,最后一个项目在结束。space-around:项目在每个项目周围以相等的填充间隔。

.flex-container {    display: flex;    justify-content: space-between;}

现在,物品将在容器内均匀分布。

5.对齐项目 – 垂直魔法

justify-content 控制水平对齐,而 align-items 负责垂直对齐(或沿横轴)。以下是您的选择:

拉伸:项目拉伸以填充容器(默认)。flex-start:项目与顶部对齐。flex-end:项目与底部对齐。center:项目垂直居中

.flex-container {    display: flex;    align-items: center;}

现在,所有项目都将在容器内垂直居中。

6. flex-grow、flex-shrink 和 flex-basis – 微调 flex 项目

有时,您希望某些项目增大、缩小或具有固定的起始尺寸。 flex-growflex-shrinkflex-basis 属性可让您控制该行为:

flex-grow:控制一个项目相对于其他项目应该增长多少。flex-shrink:控制一个项目相对于其他项目应收缩的程度。flex-basis:设置项目在增大或缩小之前的初始大小。

示例:

.item {    flex-grow: 1;    flex-shrink: 0;    flex-basis: 100px;}

这可确保项目从 100 像素开始,但如果需要,它可以增长以填充额外的空间,而不会缩小。

7.实践中的 flexbox 示例

让我们用一个例子将所有这些放在一起!

item 1
item 2
item 3
.flex-container {    display: flex;    flex-direction: row;    justify-content: space-around;    align-items: center;    height: 300px;    background-color: #f0f0f0;}.item {    background-color: #4CAF50;    padding: 20px;    color: white;    flex-grow: 1;}

在此示例中:

项目排列成行。它们通过 justify-content: space-around 均匀分布。所有项目都在容器中垂直居中,并使用align-items: center。由于 flex-grow,每个项目都会增长以均匀地填充可用空间:1.

8.为什么 flexbox 如此受欢迎

flexbox 消除了我们过去在 css 中遇到的布局设计的复杂性。不再有浮动,不再担心清理,响应式设计变得更加简单!

要点:

使用 display: flex 将容器变成 flex 容器。使用flex-direction设置流向(行或列)。使用 justify-contentalign-items 来控制间距和对齐。使用 flex-growflex-shrinkflex-basis 微调您的弹性项目。

在 linkedin 上关注我-

里多伊·哈桑

以上就是Flexbox – 对齐和分配空间的现代方式的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1629950.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 12:53:25
下一篇 2025年12月24日 12:53:33

相关推荐

  • CSS 新属性Field-sizing,可以使input 、 textarea和select自适应其内容

    介绍field-sizing field-sizing 是一个新的 css 属性,可以使input 、 textarea和select自动缩放到其内容的大小。 fixed ,这是输入、文本区域和选择的当前行为,无论内容如何,​​它们都具有固定大小。content ,使表单元素缩放到内容的大小 当您将…

    2025年12月24日
    000
  • 如何在 CSS 中将 Div 居中

    弹性盒: .container { display: flex; justify-content: center; align-items: center; height: 300px;} 网格 .container { display: grid; place-items: center; hei…

    2025年12月24日
    000
  • 什么是 Tailwind CSS?

    Tailwind CSS 是一个实用程序优先的 CSS 框架,允许开发人员快速高效地创建自定义设计。与提供预先设计的组件的传统 CSS 框架不同,Tailwind CSS 提供低级实用程序类,可以组合这些类以直接在 HTML 中构建任何设计。 Tailwind CSS 的主要特性 实用优先方法: T…

    2025年12月24日
    000
  • CSS 网格 – 轻松构建复杂布局

    第 15 讲:css 网格 – 轻松构建复杂布局 在本次讲座中,我们将深入探讨 css 网格,这是一个强大的布局系统,可让您完全控制行和列。虽然 flexbox 非常适合一维布局(行或列),但 grid 允许您处理二维布局,这意味着您可以精确地设计整个网页布局。 1.什么是 css 网格? css …

    2025年12月24日
    000
  • 带有媒体查询的响应式设计

    第 16 讲:带有媒体查询的响应式设计 在今天的讲座中,我们将探索响应式设计以及如何使用媒体查询让您的网站在任何设备上看起来都很棒。在移动浏览时代,创建适应各种屏幕尺寸的布局对于用户体验至关重要。 1.什么是响应式设计? 响应式设计可确保网站调整其布局、图像和内容以适应不同的屏幕尺寸和方向。这种方法…

    2025年12月24日
    000
  • 网络进化!

    Web 应用程序从静态网站到动态网页的演变是由对更具交互性、用户友好性和功能丰富的 Web 体验的需求推动的。以下是这种范式转变的概述: 1. 静态网站(1990 年代) 定义:静态网站由用 HTML 编写的固定内容组成。每个页面都是预先构建并存储在服务器上,并且向每个用户传递相同的内容。技术:HT…

    2025年12月24日
    000
  • CSS 变量 – 简化您的样式表

    第 17 讲:css 变量 – 简化样式表 在本次讲座中,我们将了解 css 变量(也称为自定义属性)以及它们如何通过允许您在样式表中重用值来帮助简化代码。 1.什么是 css 变量? css 变量使您能够将颜色、字体大小或间距等值存储在中心位置,并在整个样式表中重复使用它们。这使您的代码更易于维护…

    2025年12月24日
    000
  • 我做了我的第一个前端项目

    今天,我完成了我的第一个前端项目,这是一张个人资料卡。 这个想法来自前端导师,但我决定加入自己的想法,同时不偏离我所知道的初学者水平太远,我添加了一些动画,有点超出了我的舒适区,比如归因部分的心跳和标题上看到的轻微悬停效果,我觉得看起来棒极了。 我真的为自己感到骄傲,因为在此之前我什至从未自己做过一…

    2025年12月24日
    000
  • CSS 中的折叠边距:初学者指南

    介绍 没有什么比应用一种样式但它没有按预期工作更令人沮丧的了。边距塌陷是一种导致意想不到的造型效果的现象。那么,什么是折叠边距以及它如何影响 css 中的边距? 利润崩溃 折叠边距源于css属性边距,它控制元素外部的间距。顾名思义,当相邻元素的边距组合或“折叠”为一个而不是相加时,就会发生折叠边距。…

    2025年12月24日
    000
  • 编写 CSS 的最佳实践——干净、可扩展和可维护的代码

    编写 css 的最佳实践 – 干净、可扩展且可维护的代码 在本课程的最后一讲中,我们将重点关注编写高效、可扩展且可维护的 css 的最佳实践。这些原则将帮助您为样式表开发一种干净且专业的方法,使它们随着项目的发展而更易于管理。 1.使用有意义的类名 类名应该具有描述性并表明其用途。避免使用模糊的名称…

    2025年12月24日
    000
  • 查看过渡主题动画

    使用 css 和视图转换从浅色模式转换为深色模式时添加炫酷效果 复制自 twitter 上的@jhey[!注意]这假设您已经设置了暗光模式,并具有某种功能来更新您的主题 添加css /* angled */ [data-style=’angled’]::view-transition-old(roo…

    2025年12月24日
    000
  • 我进入网络编程世界的第一步:HTML 和 CSS

    大家好! 几天前,我决定迈出一步,开始学习编程。和许多人一样,我从基础知识开始:html 和 css。开始一个简短的 40 分钟课程(来自 deivchoi 的从头开始的基础 html5 和 css3 课程),虽然一开始一切看起来都很简单,但当我到达 css 和样式部分时,我对本地和全局的概念有点迷…

    2025年12月24日
    000
  • 使用 SCSS Mixins 和函数让你的 CSS 更好

    scss 是 css 的扩展,使您的代码更易于管理。借助 scss,您可以使用 mixins 和函数来帮助您避免一次又一次编写相同的代码。在本文中,我将向您展示一些有用的 scss mixin 和函数,它们可以节省您的时间并使您的代码更清晰。 为什么使用 mixins 和函数? ​​编写 css 时…

    2025年12月24日
    000
  • CSS BEM 命名约定:它是什么、为什么重要以及如何使用它?

    编写干净且有组织的 css 很重要,尤其是对于大型项目。构建 css 的最佳方法之一是使用 bem 命名约定。在本文中,我们将解释 bem 是什么、为什么它很重要、它的优点和缺点,并通过两个示例向您展示如何使用它。 什么是边界元法? bem 代表 块、元素 和 修饰符。它是一个用于编写 css 类名…

    2025年12月24日
    000
  • CSS 中的盒模型:制作精确布局的终极指南

    Web设计概念中,盒子模型是CSS中非常关注布局设计的基础知识领域。盒子模型解释了页面上元素的放置和定位方式,这会影响水平度和总体连贯性。 除了概述盒子模型的背景和边框之外,本指南还指导您完成填充、边距和盒子大小调整,以便您可以完全控制布局。要开始专业水平的 Web 项目设计,无论您的编程水平如何,…

    2025年12月24日
    000
  • CSS 选择器备忘单

    这是一个全面的 css 选择器备忘单,涵盖了您可能需要的所有基本和高级选择器: 1. 基本选择器 通用选择器 (*):针对所有元素。 * { margin: 0; } 类型选择器(元素选择器):针对给定类型的元素。 p { color: blue; } 类选择器(.classname):针对具有特定…

    2025年12月24日
    000
  • CSS 中的盒模型:制作精确布局的终极指南(第 2 部分)

    什么是盒子模型? 盒子模型描述了每个 html 元素如何在网页上表示。每个元素都被视为包含多个层的矩形框:内容、填充、边框和边距。该结构还会影响网页上元素的布局和间距。 盒子模型在网页设计中的用途 CSS 盒模型确保每个元素相对于其他元素都有明确定义的边界和间距。这些边界是安排干净且结构化的页面布局…

    2025年12月24日
    000
  • CSS Padding – 管理元素内部的空间

    第 11 讲:css 填充 – 管理元素内的空间 在本次讲座中,我们将讨论css 填充,它控制元素内部元素内容与其边框之间的空间。填充在确定元素的间距和大小、提供干净且可读的布局方面起着至关重要的作用。 1.什么是填充? padding 定义元素内容与其边框之间的空间。与边距(在元素外部…

    2025年12月24日
    000
  • 太阳系的表示

    这是前端挑战 v24.09.04,CSS 艺术:空间的提交。 灵感 仅使用 CSS 来直观地展示太阳系。 演示 https://github.com/ShitanshuRoy/solar 要运行,只需在任何浏览器中打开index.html 文件即可。 旅行 深入研究 CSS 动画,能够创建有趣的移动…

    2025年12月24日
    000
  • CSS 艺术:太空 – 太阳系探索

    `这是前端挑战 v24.09.04,CSS 艺术:空间的提交。 灵感 我想使用 CSS Art 和 HTML 创建一个交互式且具有视觉吸引力的太阳系表示。灵感来自于我对太空和天体之美的迷恋。通过这个项目,我的目标是将简约设计与互动元素相结合,鼓励用户探索和了解太阳系中的每个行星。 演示 现场演示:探…

    2025年12月24日
    000

发表回复

登录后才能评论
关注微信