搜索
首页web前端css教程了解 CSS Flexbox:初学者指南!!!

Understanding CSS Flexbox: A Beginners Guide!!!

?目录

  1. CSS Flexbox 简介
  2. 基本属性
  3. 高级属性
  4. 结论

?️ CSS Flexbox 简介

CSS Flexbox 是解决您所有布局问题的终极解决方案。在本文中,我们完全专注于掌握 Flexbox、探索它的属性以及如何使用它轻松创建令人惊叹的响应式设计。让我们深入研究并使这些布局变得无缝。

灵活框布局(Flexbox)是一种一维布局方法,它沿单个轴(行或列)排列项目。如果你是像我一样的视觉学习者,这可能没有多大意义,所以让我给你画一张图 -

想象一下,你有一个盒子,里面装满了你最喜欢的东西,可能是书,也可能是你最喜欢的零食,无论什么东西都会让你的船摇摇欲坠,但它们完全混乱。 Flexbox 就像一个神奇的组织者,带着一点强迫症,突然出现来拯救世界。它将所有内容整齐地排列在行和列中,以满足您的确切需求。

无论您希望项目均匀分布、分组到一侧还是完美居中,Flexbox 都是您的首选。现在我们知道 Flexbox 是强迫症的组织者,让我们深入了解它用来实现奇迹的工具!以下是它的基本属性:

** 基本属性 **

1. 显示:flex:这就是一切开始的地方!通过将此属性添加到容器(装满您最喜欢的零食的盒子)中,所有零食(子元素)将默认沿单个轴整齐排列,即一行。但别担心,如果您愿意,您可以切换到列!”

注意: 要与 CodePen 示例进行交互,请单击插图右上角的“在 CodePen 上编辑”文本。这使您可以实时使用代码!

在 CodePen 上进行数值实验:

2。 flex-direction: 这决定了你的零食将排列在哪个方向。请记住,默认情况下,零食排成一排,但 flex 方向为你提供了力量来改变这一点。这是它的值:

a。 row(默认):你的零食从左到右整齐地排成一排。

b。 row-reverse: 这些物品翻转方向并从右向左排列,非常适合当你感到有点叛逆的时候!

c.专栏:你的物品垂直堆叠起来,就像一个小吃塔!想象一下每一种零食(或弹性物品)都被放置在另一个之上,形成一个美味的零食塔。

d。 column-reverse: 堆栈从底部开始向上构建。

这是一个插图,请随意更改 flex-direction 值,以便您了解它们是如何工作的。

3。 Justify-content:这是弹性容器的魔杖,它用它来分配零食之间的空间。它在某种程度上决定了零食盒中零食的排列方式。以下是它的主要选项:

a。 flex-start(default): 所有零食都聚集在行或列的开头。

b。 flex-end: 所有零食都聚集在行或列的末尾。

c. center:零食聚集在行或列的中间。

d。 space- Between: 第一个小吃被推到开头,最后一个小吃被推到末尾,其余的在它们之间均匀分布。

e。 space-around: 零食周围的空间相等。

f。空间均匀: 零食周围的空间完全相等。

这是一个插图,请随意更改 justify-content 值,以便您可以看到它们是如何工作的。

4。 Align-items:我们已经使用 flex-direction 将零食排列成行或列,现在是时候决定我们希望它们在零食容器中的位置有多高或多低了。以下是它的共同值:

a。 flex-start:在交叉轴的起点对齐项目。

b。 flex-end:在横轴末端对齐项目。

c. center:将项目沿横轴居中。

d。拉伸:拉伸项目以填充容器(块级项目的默认值)。

e。基线:沿着文本基线对齐项目。

让我们看看对齐项目的实际效果。

探索下面的代码笔,看看它的神奇作用!请随意调整 CSS,看看它如何改变对齐方式。

** 高级属性 **

1。 Align-content:align-content 属性指定多行 Flex 项目(或类比中的零食)如何在 Flex 容器(零食容器)内沿横轴间隔开。仅当有多行或多列 Flex 项目时,它才起作用,这意味着您的 Flex 容器必须包含包装内容(flex-wrap:wrap)。

Align-content 的值

a。 flex-start:所有行的零食都聚集在零食容器的顶部,使容器的其余部分感觉相当空。

b。 flex-end:成排的零食聚集在零食容器的底部,从而在顶部留下空白空间(顶部孤独)。

c.中心:一排排零食聚集在中间,在零食容器的顶部和底部留出空间。

d。 space- Between: 零食行均匀分布,第一行在顶部,最后一行在底部。

e。 space-around:行之间的间距相等。

f。 space-evenly:行之间的间距相等。

g。拉伸(默认):我们的零食都“拉伸”以填满零食容器的高度。

话已经说完了,让我们灵活付诸行动(看看我做了什么?没有人?好吧?‍♀️)。

您可以将align-content值替换为flex-start、flex-end、center、space- Between、space-around、space-evenly或stretch来观察变化。

查看此 CodePen 的交互式插图!

?对齐项目与对齐内容:有什么区别?
尽管听起来很相似,但align-items 和align-content 并不相同。让我们澄清一下区别:

align-items 沿横轴对齐各个 Flex 项目。将其视为在单行/列中设置项目本身的对齐方式。

align-content 沿 Flex 容器的横轴对齐多行项目(当处于活动状态时,即 flex-wrap:wrap)。

?要点:
align-items 处理单个弹性容器内的所有项目,而align-content 处理多行项目(仅当有多个换行时)。

**记住**:

Property Focus Area When to use
Align-items Align individual items When you are adjusting the vertical alignment of single items
Align-content Align rows of items When flex-wrap: wrap is used (and there are multiple rows)

2。 Flex-wrap:此属性决定您的弹性项目(又名您最喜欢的零食)是否应该全部挤入一行/列,或者在空间不足时礼貌地包装到多行/列上。

这是它的值:

a。 nowrap(默认):你的零食决定它们不需要喘息空间,只是挤成一排/一列。

b。包裹:现在,他们需要喘息空间,因此当第一行/列中没有更多空间时,他们溢出到下一行或下一列。

c .wrap-reverse:与换行几乎相同,但它们以相反的方式进行。从下到上或从右到左,取决于弯曲方向。

这是一个 CodePen,演示了 flex-wrap 属性的行为。您可以尝试不同的值(nowrap、wrap 和 wrap-reverse),看看 Flex 容器如何处理零食的溢出。

3。 Flex:这是一个决定性的属性,它设置 Flex 项目(我们的零食)如何增大或缩小以适应其 Flex 容器中的可用空间。它是 3 个子属性的简写:

a。 flex-grow:确定弹性项目将增长多少。

b。 flex-shrink:决定当空间紧张时弹性项目将收缩多少。

c. flex-basis:确定项目开始增大或缩小之前的起始尺寸。

这是一个 CodePen,演示了 flex 属性及其组件

随意打开它并与之交互,看看调整弹性值如何改变项目的布局。

4。 Align-self:此属性会覆盖 Flex 容器的对齐项目值。它基本上将项目在横轴上对齐。这是它的值:

a。 auto(默认):从容器的align-items属性继承对齐方式。

b。 flex-start:将项目在横轴的起点对齐。

c. flex-end:将项目对齐到横轴的末端。

d。 center:将项目沿横轴居中。

e。拉伸:拉伸项目以填充横轴(如果不是固定大小)。

f。基线:沿着文本基线对齐项目。

查看此 CodePen 的交互式插图!

?结论
CSS Flexbox 简化了我们处理布局的方式。借助一些关键属性,例如 display:flex、flex-direction、justify-content 和align-items,您可以轻松制作响应灵敏且对齐精美的设计。

?想要深入了解吗?这里有一些很棒的资源:

  1. CSS 技巧:Flexbox 完整指南

涵盖每个 Flexbox 属性和用例的详细指南。

  1. MDN 网络文档 - CSS Flexbox

包含解释、示例和浏览器兼容性的官方文档。

掌握任何事物的关键是持续不断的练习,所以一定要尽可能多地练习以巩固你的理解。您使用这些工具越多,您就会对自己创建精美布局的能力越有信心。

下次再见,你友好的邻居作家(是的,这在我看来是有道理的)。 ?再见!!!

以上是了解 CSS Flexbox:初学者指南!!!的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Draggin'和droppin'在反应中Draggin'和droppin'在反应中Apr 17, 2025 am 11:52 AM

React生态系统为我们提供了许多库,所有库都集中在拖放的相互作用上。我们有反应,反应,可爱dnd,

快速软件快速软件Apr 17, 2025 am 11:49 AM

最近有一些关于快速软件的完美互连的事情。

带有背景折叠的嵌套梯度带有背景折叠的嵌套梯度Apr 17, 2025 am 11:47 AM

我可以说我经常使用背景折叠。 IT Wager IT几乎从未在日常CSS工作中使用。但是在斯特凡·朱迪斯(Stefan Judis)的帖子中,我想起了它,

使用React Hooks使用requestAnimationFrame使用React Hooks使用requestAnimationFrameApr 17, 2025 am 11:46 AM

使用RequestAnimationFrame进行动画化应该很容易,但是如果您还没有彻底阅读React的文档,那么您可能会遇到一些事情

需要滚动到页面顶部吗?需要滚动到页面顶部吗?Apr 17, 2025 am 11:45 AM

向用户提供此链接的最简单方法是针对元素上的ID的链接。如此...

最好的(GraphQl)API是您编写的API最好的(GraphQl)API是您编写的APIApr 17, 2025 am 11:36 AM

听着,我不是GraphQL专家,但我确实喜欢与之合作。作为前端开发人员,它向我曝光数据的方式非常酷。它就像一个菜单

在保留边框半径的同时,扩展盒子的各种方法在保留边框半径的同时,扩展盒子的各种方法Apr 17, 2025 am 11:19 AM

我最近注意到Codepen的一个有趣的更改:在悬停在主页上的笔时,有一个矩形,圆角在后面扩展。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前By尊渡假赌尊渡假赌尊渡假赌

热工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具