CSS - align-content 属性



CSS 的 align-content 属性用于沿十字轴或网格的块轴对齐 flex 容器的内容。它适用于具有多行柔性物品的柔性容器。

属性 align-content 对单行 flex 容器 (flex-wrap: nowrap) 没有影响。

可能的值

align-content 属性可以具有以下值:

start:物料在十字轴上与容器的起始边缘对齐。

end:物料在十字轴上与容器的末端边缘相互对齐。

flex-start:将内容对齐 flex 容器的开头。

flex-end:对齐 flex 容器末端的内容。

center:将内容对齐在 flex 容器的中心。

normal:项目在其默认位置对齐,就像没有为 align-content 设置任何值一样。

baseline, first baseline, last baseline

  • 第一个基线和最后一个基线是基线的同义词。第一个和最后一个是指 flex 项中的行框。
  • 这些值指定了第一基线对齐或最后基线对齐在内容对齐中的参与。
  • start”是第一个基线的回退对齐,结束是最后一个基线的回退对齐。

space-between:沿十字轴均匀分布内容,在第一行之前或最后一行之后不留任何空间。

space-around:沿十字轴均匀分布内容,在每行前后提供相等的空间。

space-evenly:沿横轴均匀分布内容,在每行之前、之间和之后提供相等的空间。

stretch:拉伸内容物以沿十字轴填充容器。

safe:与对齐关键字一起使用,当项目溢出容器时,导致任何数据丢失,将对齐方式将根据起始值进行设置。

unsafe:与对齐关键字一起使用,即使项目溢出容器,导致任何数据丢失,也会遵守传递的对齐值。

适用于

多线柔性集装箱。

语法

位置对准


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

正常对齐


align-content: normal;

基线对齐


align-content: baseline;
align-content: first baseline;
align-content: last baseline;

分布式对齐


align-content: space-between;	
align-content: space-around;	
align-content: space-evenly;	
align-content: stretch;

CSS align-content- start 值

以下示例演示了 align-content: start 属性将 flex 项对齐在 flex 容器的交叉轴起点处 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: start;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content- end 值

以下示例演示了 align-content: end 属性将 flex 项对齐在 flex 容器的交叉轴末端 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: end;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content - center 值

以下示例演示了 align-content: center 属性将 flex 项对齐在 flex 容器的交叉轴中心——


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: center;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content - 弹性启动值

以下示例演示了 align-content: flex-start 属性将 flex 项对齐 flex 容器的开头 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: flex-start;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content - flex-end 值

以下示例演示了 align-content: flex-end 属性将 flex 项对齐 flex 容器的末尾 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: flex-end;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content - 值之间的空格

以下示例演示了 align-content: space-between 属性沿 flex 容器的交叉轴在 flex 项之间均匀分布空间 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: space-between;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content - 空格包围值

以下示例演示了 align-content: space-around 属性将 flex 项分布在 flex 容器中,每个项周围具有相等的空间 −


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: space-around;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content - space-evenly 值

以下示例演示了 align-content: space-evenly 均匀地沿 flex 容器的横轴在 flex 项周围和之间均匀分布空间 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 300px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: space-evenly;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	</div>
</body>
</html>

CSS align-content - 基线值

以下示例演示了 align-content: baseline 属性沿 flex 容器的基线对齐 flex 项 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 350px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: baseline;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	 	 height: 50px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	 	 <div>Flex item 4</div>
	 	 	 <div>Flex item 5</div>
	 	 	 <div>Flex item 6</div>
	 	 	 <div>Flex item 7</div>
	 	</div>
</body>
</html>

CSS align-content - 拉伸值

以下示例演示了 align-content: stretch 属性沿 flex 容器的十字轴拉伸 flex 项以填充可用空间 -


<html>
<head>
<style>
	 	.flex-container {
	 	 	 display: flex;
	 	 	 background-color: green;
	 	 	 height: 200px;
	 	 	 width: 100%;
	 	 	 flex-wrap: wrap;
	 	 	 align-content: stretch;
	 	}
	 	.flex-container div {
	 	 	 background-color: yellow;
	 	 	 padding: 10px;
	 	 	 margin: 5px;
	 	 	 width: 90px;
	 	}
</style>
</head>
<body>
	 	<div class="flex-container">
	 	 	 <div>Flex item 1</div>
	 	 	 <div>Flex item 2</div>
	 	 	 <div>Flex item 3</div>
	 	</div>
</body>
</html>