CSS - Flex 之最直观的方式学习 Flexbox 属性(四)

简介: CSS - Flex 之最直观的方式学习 Flexbox 属性(四)

Flex items会向交叉轴的结束位置靠拢。

image.png

.flex-container {
  -webkit-align-content: center; /* Safari */
  align-content:         center;
}

flex items的行会在交叉轴上居中显示。


image.png


.flex-container {
  -webkit-align-content: space-between; /* Safari */
  align-content:         space-between;
}

每一行都会有相同上下间隔。


image.png


默认值:stretch

注:这个属性只会在flex container有多行的时候才会有效,如果只有一行那么这个属性就不会有效果。

关于flex containers

  • 所有的column-*属性在flex container上都不会有效果
  • ::first-line::first-letter伪类在flex container上不会被应用。

 

FlexBox Item 属性

Order

order属性定义子元素在父容器中的顺序,默认它们会被最加到后面。

例子:

.flex-item {
  -webkit-order: <integer>; /* Safari */
  order:         <integer>;
}

不需要调整HTML,就能修改显示顺序。


image.png


默认值:0

 

flex-grow

这个属性是一个flex拉伸因子,决定了flex items会相对于父容器剩余空间增长多少。


.flex-item {
  -webkit-flex-grow: <number>; /* Safari */
  flex-grow:         <number>;
}


如果所有flex items都有相同的flex-grow,那么他们都会在父容器中有相同的尺寸。


image.png


调整一下,看看有什么区别。


image.png


默认值:0

注:负数是不合法的

 

flex-shrink

flex-shrink是一个flex收缩因子,它决定了当父容器体积不足时,flex items收缩的相对比例。


.flex-item {
  -webkit-flex-shrink: <number>; /* Safari */
  flex-shrink:         <number>;
}


默认所有flex items都是可以压缩的,但如果我们把它设为0,那么它将保持原有大小。


image.png


默认值: 1

注:负数是不合法的。

 

flex-basis

这个属性会设置宽度和高度,

原文为:This property takes the same values as the width and height properties

并在flex因子分割间隔之前,指定flex items的初始大小。


.flex-item {
  -webkit-flex-basis: auto | <width>; /* Safari */
  flex-basis:         auto | <width>;
}
flex-basis会指定第四个flex items的初始大小。

flex-basis会指定第四个flex items的初始大小。


image.png


默认值: auto。

 

flex

这个属性是flex-grow,flex-shrinkflex-basis属性的缩写。


.flex-item {
  -webkit-flex: none | auto | [ <flex-grow> <flex-shrink>? || <flex-basis> ]; /* Safari */
  flex:         none | auto | [ <flex-grow> <flex-shrink>? || <flex-basis> ];
}

默认值:0 1 auto

注:w3c鼓励使用简写,而不是每个属性都分开写。

 

align-self

这个属性允许为单个flex items重写对齐方式。、




.flex-item {
  -webkit-align-self: auto | flex-start | flex-end | center | baseline | stretch; /* Safari */
  align-self:         auto | flex-start | flex-end | center | baseline | stretch;
}

image.png


默认值:auto

注:The value of auto for align-self computes to the value of align-items on the element’s parent, or stretch if the element has no parent.

 

关于 flex items

  • float,clearvertical-alignflex item上都不会有作用,也不会让它脱离文档流。
目录
相关文章
|
1月前
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
|
29天前
|
前端开发 JavaScript 开发者
掌握 CSS 弹性布局(Flexbox):构建复杂页面布局的高效秘籍与实战案例
CSS弹性布局(Flexbox)是现代网页设计中构建复杂页面布局的高效工具。本文将深入浅出地介绍Flexbox的核心概念、使用技巧及实际应用案例,帮助读者快速掌握这一强大布局方法。
|
29天前
|
前端开发
CSS 浮动属性讲解和使用
本文介绍了CSS中的浮动(float)属性,包括其基本功能、属性选项及其在网页布局中的应用。浮动使元素脱离文档流,向左或右排列,周围元素随之调整。文章还详细讲解了清除浮动的方法,如使用clear属性、设置父元素高度、利用overflow属性、伪元素等,以解决因浮动导致的布局问题。最后,强调了浮动在创建复杂布局时的作用,并预告后续内容。
35 2
|
29天前
|
前端开发
CSS transition过渡属性详解
本文介绍了CSS中`transition`属性的作用、用法及实例。`transition`用于在元素属性变化时添加平滑过渡动画,通过设置`transition-property`、`transition-duration`、`transition-timing-function`和`transition-delay`等属性值,可以精细控制过渡效果。文末提供了HTML示例代码,展示了如何使用`transition`实现鼠标悬停时背景颜色的平滑变化。
42 1
|
1月前
|
Web App开发 前端开发 iOS开发
css所有缩写属性,CSS属性简写整理
css所有缩写属性,CSS属性简写整理
33 1
|
1月前
|
前端开发
css简写属性
css简写属性
32 0
|
2月前
|
前端开发 开发者 容器
CSS3:flex&box-sizing
本文介绍了CSS中的Flex布局及其相关属性,如`flex-direction`、`flex-wrap`、`justify-content`等,并通过代码示例展示了如何使用这些属性来控制容器内的项目排列方式。同时,还讲解了`align-items`属性用于定义子元素在交叉轴上的对齐方式,以及`box-sizing`属性的不同取值对元素尺寸计算的影响。
|
2月前
|
前端开发 JavaScript
如何在CSS中添加自定义属性
如何在CSS中添加自定义属性
20 0
|
前端开发
导入CSS的三种方式
导入CSS的三种方式: 1.内部样式 2.外部样式 3.内联样式
702 0