此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

flex-wrap

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年9月⁩.

CSSflex-wrap 属性指定 flex 元素单行显示还是多行显示。如果允许换行,这个属性允许你控制行的堆叠方向。

尝试一下

flex-wrap: nowrap; 
flex-wrap: wrap; 
flex-wrap: wrap-reverse; 
<section class="default-example" id="default-example"> <div class="transition-all" id="example-element"> <div>Item One</div> <div>Item Two</div> <div>Item Three</div> <div>Item Four</div> <div>Item Five</div> <div>Item Six</div> </div> </section> 
#example-element { border: 1px solid #c5c5c5; width: 80%; display: flex; } #example-element > div { background-color: rgba(0, 0, 255, 0.2); border: 3px solid blue; width: 60px; margin: 10px; } 

参考 flex 布局的基本概念 查看更多的属性和信息。

语法

css
flex-wrap: nowrap; /* Default value */ flex-wrap: wrap; flex-wrap: wrap-reverse; /* Global values */ flex-wrap: inherit; flex-wrap: initial; flex-wrap: revert; flex-wrap: unset; 

flex-wrap 属性可指定为以下取值列表中的任意一个关键字。

取值

flex-wrap 属性接受以下取值:

nowrap

flex 的元素被摆放到到一行,这可能导致 flex 容器溢出。cross-start 会根据 flex-direction 的值等价于 startbefore。为该属性的默认值。

wrap

flex 元素 被打断到多个行中。cross-start 会根据 flex-direction 的值等价于 startbeforecross-end 为确定的 cross-start 的另一端。

wrap-reverse

和 wrap 的行为一样,但是 cross-startcross-end 互换。

形式定义

初始值nowrap
适用元素弹性容器
是否是继承属性
计算值as specified
动画类型离散值

形式语法

flex-wrap = 
nowrap |
wrap |
wrap-reverse

示例

设置 flex 容器堆叠形式

HTML

html
<h4>这是一个关于 flex-wrap:wrap 的例子</h4> <div class="content"> <div class="red">1</div> <div class="green">2</div> <div class="blue">3</div> </div> <h4>这是一个关于 flex-wrap:nowrap 的例子</h4> <div class="content1"> <div class="red">1</div> <div class="green">2</div> <div class="blue">3</div> </div> <h4>这是一个关于 flex-wrap:wrap-reverse 的例子</h4> <div class="content2"> <div class="red">1</div> <div class="green">2</div> <div class="blue">3</div> </div> 

CSS

css
/* Common Styles */ .content, .content1, .content2 { color: #fff; font: 100 24px/100px sans-serif; height: 150px; width: 897px; text-align: center; } .content div, .content1 div, .content2 div { height: 50%; width: 300px; } .red { background: orangered; } .green { background: yellowgreen; } .blue { background: steelblue; } /* Flexbox Styles */ .content { display: flex; flex-wrap: wrap; } .content1 { display: flex; flex-wrap: nowrap; } .content2 { display: flex; flex-wrap: wrap-reverse; } 

结果

规范

Specification
CSS Flexible Box Layout Module Level 1
# flex-wrap-property

浏览器兼容性

参见