DIV+CSS样式,li自动适应高度,自动换行,横向排列

html-css028

DIV+CSS样式,li自动适应高度,自动换行,横向排列,第1张

HTML部分:

<div id="nav">

<ul>

<li>AAAA</li>

<li>BBBB</li>

<li>CCCC</li>

<li>DDDD</li>

<li>EEEE</li>

<li>FFFF</li>

</ul>

</div>

css部分:

#nav{

margin: 0 auto

border: 2px solid #00CED1

}

ul,li {

margin: 0px

padding: 0px

list-style: none

}

ul{

display: flex

flex-direction: row

flex-wrap: wrap

}

li{

border: 1px solid

width: 100px/*每个元素的初始化宽度*/

text-align: center

margin-top: 10px

margin-bottom: 10px

flex:auto  /*这是关键*/         

}

扩展资料:

Flex是Flexible Box的缩写,用来为盒装模型提供最大的灵活性。任何一个容器都可以指定为Flex布局。

采用Flex布局的元素,被称为Flex容器(flex container),简称“容器”。其所有子元素自动成为容器成员,成为Flex项目(Flex item),简称“项目”。

容器默认存在两根主轴:水平方向主轴(main axis)和垂直方向交叉轴(cross axis),默认项目按主轴排列。

main start/main end:主轴开始位置/结束位置;

cross start/cross end:交叉轴开始位置/结束位置;

main size/cross size:单个项目占据主轴/交叉轴的空间;

设置在容器上的属性有6种。

flex-direction

flex-wrap

flex-flow

justify-content

align-item

align-content

由于margin, padding 的百分比数值是相对父元素的宽度计算的,只需将元素垂直方向的一个padding值设定为与width的一定比例就可以了。比如正方形:

未完待续