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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DIV+CSS样式,li自动适应高度,自动换行,横向排列相关的知识,希望对你有一定的参考价值。

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

参考技术A 换行:给li里面的a设成块级元素并给宽度和行高,如果li不包含a就在li上面设。
横排:把li浮动起来,一排能横排多少个,取决于你li的宽度和外面ul的宽度
参考技术B 将li的样式设置成以下例子:
display:inline;line-height:24px;height:auto;word-break:break-all;word-wrap : break-word ;
可以修改一下,到适合你的要求。
参考技术C 要看你li里面的内容了,li应该是本身就适应自动高度,给li宽度,里面的文字就会自动换行了,横向排列是想让 li都横向排列,那就写 float:left 参考技术D li float:left; padding:0px 5px; list-style:none; 张家界 凤凰 长沙 衡山 韶山 岳阳楼 周洛 郴州 衡山 桃花源 宁乡 大围山

html div 高度怎么不自动增加?

<div>

<div>

<h2>fsafslf</div>

</div>
</div>
刚打不了中文, 第一div 没设浮动,第二个设了。 h2没设。
背景设在第一div,结果h2里看不到背景

参考技术A html div 高度不自动增加,这个问题的你要div自动增加,那么它必须要有height:auto;自增的这个属性的,还有你的上一级div高度已经设置了的话,这个div的高度到了,也不会增加了,这里我提交一段代码你可以看下,

html>
<head>
<style>
#div1
height:auto;
widht:400px;


</style>

</head>

<body>
<div id='div1'>
<p>我只是一个测试的文字</p>

</div>
</body>

</html>
参考技术B <style type="text/css">
.contentbackground:#a5a5a5;height:auto!important; height:500px; min-height:500px;
</style>
<body>
<div class="content">24646146<br/>
24646146<br/>
24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>24646146<br/>
24646146<br/>
</div>
</body>
试着删减就可以看到高度变化
你那是没有结束标签
<h2 style="background-color:#06C;">fsafslf</h2>
参考技术C <div>

<div>

<h2>fsafslf</div>

</div>
<div style="clear:both;"></div>
</div>

在我标注的位置,方上
<div style="clear:both;"></div>
就可以了。你可以试试
参考技术D <div>
<div>
<h2>fsafslf</div>
</div>
</div>
有两种方法,所有div 都不设浮动。
第二种 最下面div 加一个 clear:both 样式会,含有该样式的标签。
还有一种就设置最外层高度,基本不用本回答被提问者采纳
第5个回答  2012-08-03 属性不对

以上是关于DIV+CSS样式,li自动适应高度,自动换行,横向排列的主要内容,如果未能解决你的问题,请参考以下文章

自动换行 css 自适应 宽度不能用固定的,因为必须要适应各类手机,求方法

CSS默认下固定高度,自动适应

css中Li的横向排列自适应宽度的问题

div+css 父容器是自动高度,几个子容器也是自动高度,怎样兼容浏览器,父容器自适应高度?

css+div布局,左右两个div怎么能自动适应高度

DIV CSS 如何让网页中的某DIV自动适应屏幕高度自己变如下图