Mic*_*cah 7 html css width html-lists
我有一个问题是自动修复UL的宽度,LI可以直接漂浮.
如果我改变css,设置UL的宽度'1000px'不是'auto'; 我想要的就是可以做到的.
但是,是否还有其他任何设置只能通过CSS也可以达到相同的效果?因为我想自动更改UL的宽度作为增加LI的数量.
Now is like
div ul-------------------------------div ul
| /////// //////// |
| /////// li /////// li |
---------------------------------
/////// ////////
////// li /////// li
I want to be like this
div div
ul-------------------------------------------------------------ul
| /////// //////// | /////// //////// |
| /////// li /////// li | /////// li /////// li |
-------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
HTML
<div class='test'>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS
.test{
width: 500px;
height: 100px;
overflow: hidden;
}
.test > ul{
list-style:none;
width: auto;
height: 100%;
background-color:#999;
display: block;
padding: 0px;
margin: 0px;
}
.test > ul > li{
float: left;
display: block;
height: 100%;
width: 180px;
background-color:#99c;
margin-right:10px;
}
Run Code Online (Sandbox Code Playgroud)
非常感谢您的建议.
Pev*_*ara 25
你可以通过将'li'设置display为inline-block而不是浮动它来实现这一点.然后,您应该white-space将ul设置nowrap为强制它们在同一行上.像这样的东西:
ul{
list-style:none;
white-space: nowrap;
}
ul > li{
display: inline-block;
}
Run Code Online (Sandbox Code Playgroud)
你现在可以添加任意数量的li,你的ul将继续增长.
使用此技术时,您应该考虑以下几点:
inline-block在旧版浏览器中完成工作ul宽度不会超过其父级的宽度,如下面的小提琴示例所示.本li的实际上四溢他们的父母.不是一个问题,但在使用背景时你可能必须具有创造性ul.对于演示该技术的简单小提琴:http://jsfiddle.net/KgyHZ/213/
| 归档时间: |
|
| 查看次数: |
42855 次 |
| 最近记录: |