我有一个包含ul的div,每个li都有一张图片。我把剩下的图片漂浮起来让它们排成一条直线但是一旦它到达div的末尾,它就会包裹起来。我希望这些图片继续向右,隐藏,以便我能够创建一个旋转木马。我的代码如下。
HTML
<div id="container">
<div class="lfbtn"></div>
<ul id="image_container">
<li class="the_image">
<img src="" />
</li>
</ul>
<div class="rtbtn"></div>
</div>
CSS
#container {
width: 900px;
height: 150px;
margin: 10px auto;
}
#image_container {
position: relative;
left: 50px;
list-style-type: none;
width: 700px;
height: 110px;
overflow: hidden;
}
#image_container li {
display: inline-block;
padding: 7px 5px 7px 5px;
float: left;
}
.lfbtn {
background-image: url(../../img/left.gif);
background-repeat: no-repeat;
margin: 10px;
position: relative;
float: left;
top: -12px;
left: 50px;
height: 90px;
width: 25px;
}
.rtbtn {
background-image: url(../../img/right.gif);
background-repeat: no-repeat;
height: 90px;
width: 25px;
margin: 10px;
position: relative;
top: -101px;
left: 795px;
}
提前致谢!
答案 0 :(得分:5)
这是一个有效的SSCCE,其中包含最低要求的样式:
<!doctype html>
<html lang="en">
<head>
<title>SO question 2472979</title>
<style>
#images {
width: 700px;
height: 100px;
overflow: hidden;
white-space: nowrap;
}
#images li {
list-style-type: none;
display: inline;
}
</style>
</head>
<body>
<div id="images">
<ul>
<li><img src="http://sstatic.net/so/img/logo.png" width="250" height="61"></li>
<li><img src="http://sstatic.net/so/img/logo.png" width="250" height="61"></li>
<li><img src="http://sstatic.net/so/img/logo.png" width="250" height="61"></li>
</ul>
</div>
</body>
</html>
你知道,关键是white-space: nowrap;
。如果您想将其设为完整的轮播,只需将overflow: hidden;
替换为overflow-x: scroll;
和overflow-y: hidden;
。
答案 1 :(得分:3)
更新您的风格以反映这一点:
<div id="container">
<div class="lfbtn"></div>
<div style="width: 700px; overflow: hidden;">
<ul id="image_container" style="width: 1000000px;">
<li class="the_image">
<img src="Untitled-1.gif" />
</li>
</ul>
</div>
<div class="rtbtn"></div>
<br style="clear: both;" />
</div>
您需要在包装UL的div上设置宽度,然后在其上设置溢出。将您的UL设置为具有一定的宽度,以便即使有很多LI也不会包装。
说实话,我不确定为什么UL不能像DIV那样处理它,即使UL设置为显示块也是如此。任何CSS大师都要关注评论。