我在容器内部有一个<li>
的小结构,而我想要的是强制显示overflow-x
而不是overflow-y
,但我无法实现这一点,我认为这是属性float
以及我正在使用的百分比。
有没有办法可以达到这个结果?只显示水平溢出?
这是代码:
HTML
<div id="CockpitCenter">
<ul class="CockpitContainerResult">
<li><div class="box">Box 1</div></li>
<li><div class="box">Box 2</div></li>
<li><div class="box">Box 3</div></li>
<li style="height: 400px;">
<div class="box" style="height: 370px;">Box 4</div>
</li>
<li><div class="box">Box 5</div></li>
<li><div class="box">Box 6</div></li>
<li><div class="box">Box 7</div></li>
</ul>
</div>
和 css
#CockpitCenter {
height: 500px; /* set only here in jsFiddle */
position: fixed;
left: 0;
border: solid 2px #ccc;
border-bottom: none;
overflow: auto;
}
div#CockpitCenter ul.CockpitContainerResult {
float: left;
width: 100%;
}
ul.CockpitContainerResult li {
margin: 5px 0;
height: 150px;
width: 50%;
float: left;
}
ul.CockpitContainerResult li:nth-child(even) {
float: right;
}
ul.CockpitContainerResult li div.box {
border: solid 1px #ccc;
margin: 15px;
border-radius: 20px;
height: 150px;
text-align: center;
}
这是一个demo
答案 0 :(得分:0)
听起来你正在尝试制作一个旋转木马,它有许多方便的jquery插件。无论如何,你不能使用百分比宽度,你必须给你的主容器一个固定的宽度,然后给你内部的(你的ul)你想要的更大的宽度。您必须在UL上强制宽度,否则LI元素将仅包裹。一旦完成,只需在主容器中添加'overflow-x:auto'即可。您应该在路上。
快速举例,http://jsfiddle.net/ybJ6C/8/
我现在正在使用我的ipad,并没有看到滚动条,但确实滚动了。您会注意到滚动持续到结尾,如果您知道自己想要什么,可以使用宽度进行调整。如果它是动态的,那么你需要js根据其中的元素为你调整宽度。我也没有高度正确,但它足以得到这个想法。 (再次从我的ipad做这个,编码不是最好的)