如何让这些图像水平对齐而不是垂直对齐?
CSS
.images {
top: -20px;
width: 1400px;
float: left;
}
.images div {
display: inline-block;
}
问题是您的图像位于容器的整个宽度上的 div 内。将它们设置为显示为inline-blocks
,它们将在不需要的情况下排列float
。
.images div > img {
float:left;
}
或者..
.images > div {
display: inline-block;
}
@JoshC 是对的。您想使用浮点数或内联块。但是,在原始问题中,为什么将容器的宽度设置为 1400px 是一个悬而未决的问题。
我猜你想要的是将所有图像放在一条水平线上,而不是让它们换行,这在每个人所做的示例中都会发生。您在问题中说了很多,但如果您想要单行图像或者只是水平填充空间然后垂直填充空间,那么它并不完全清楚,就像其他答案一样。
如果您使用 inline-block 方法并将容器设置为不换行,您将获得水平滚动
.images{
white-space:nowrap;
}
.images > div {
display: -moz-inline-stack;
display: inline-block;
vertical-align: top;
zoom: 1;
*display: inline;
}
http://jsfiddle.net/gksSy/13/ — 我添加了一些 JS 来生成大量图像,以便您查看效果。为了完整起见,我还添加了跨浏览器的东西(尽管我怀疑 -moz 可能是必要的)
inline-block 的缺点是元素之间的空格出现在结果中。您可以通过删除元素之间的所有空格来解决此问题。
.images div {
display: inline;
}
或者
.images div {
float: left;
}
取决于你的需要。
.images div {
float: left;
}
添加someclass
到包含图像的 div
<div class="images">
<div class="imgs" data-ot="Test 1" data-ot-background="#ffffff" data-ot-shadow-Color="rgba(0,0,0,0.1)" data-ot-border-Width="false"><img src="http://www.yamaha.com/yamahavgn/images/icon_Phone30x30.png" alt="" /></div>
<div class="imgs" data-ot="Test 2" data-ot-background="#ffffff" data-ot-shadow-Color="rgba(0,0,0,0.1)" data-ot-border-Width="false"><img src="http://www.yamaha.com/yamahavgn/images/icon_Phone30x30.png" alt="" /></div>
<div class="imgs" data-ot="Test 3" data-ot-background="#ffffff" data-ot-shadow-Color="rgba(0,0,0,0.1)" data-ot-border-Width="false"><img src="http://www.yamaha.com/yamahavgn/images/icon_Phone30x30.png" alt="" /></div>
</div>
然后添加一些CSS
.imgs{display:inline}