CSS align-self 属性控制使用 flexbox 或网格布局的容器中单个项的对齐方式。虽然 align-items 用于为容器中的所有项设置默认对齐方式,但 align-self 会覆盖特定项的对齐方式。
在 flexbox 中,项目在交叉轴上对齐,而在网格中,该属性将项目对齐网格区域内。
语法
属性值
值 | 描述 |
---|---|
auto | 该元素继承其父容器的 align-items 属性,如果没有父容器,则使用 “stretch”违约。 |
stretch | 元素放置在适合容器的位置。 |
center | 该元素被放置在容器的中心位置。 |
flex-start | 该元素被放置在容器的起始位置。 |
flex-end | 该元素被放置在容器的结束位置。 |
baseline | 该元素将放置在容器的基线位置。 |
initial | 这会将属性设置为其默认值。 |
inherit | 这将从父元素继承属性。 |
CSS align self 属性的示例
以下示例说明具有不同值的 align-self 属性。
Flex 项的默认位置
为了让 flex 项目采用 align-items 属性给出的位置而没有自己的位置,我们使用 auto 值。在以下示例中,第三个 flex 项设置为 flex 容器内的初始位置。
例
拉伸 flex 项
为了让 flex 项的位置更适合容器,我们使用 stretch 值。在以下示例中,各个 flex 项被垂直拉伸以填充 flex 容器的可用空间。
例
Flex 项位于中心
为了让 flex 项处于中心位置,而不是其他 flex 项的位置,我们使用 center 值。在以下示例中,第三个 flex 项设置为 flex 容器的交叉轴中心。
例
开始时的 Flex 项
为了让 flex 项相对于其他 flex 项处于起始位置,我们使用 flex-start 值。在以下示例中,第三个 flex 项设置为 flex 容器的交叉轴的起点。
例
End 的 Flex 项
为了让 flex 项目相对于其他 flex 项目处于结束位置,我们使用 flex-end 值。在以下示例中,第三个 flex 项设置为 flex 容器的交叉轴的末端。
例
基准处的 Flex 项
为了让 flex 项位于容器的基线处,我们使用 baseline 值。在以下示例中,第三个 flex 项沿容器的基线设置。
例
支持的浏览器
属性 | ![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|---|
align-self | 57.0 | 16.0 | 52.0 | 10.1 | 44.0 |