我试图在<td>
(也为每个img尝试一个<td>
)并排放置两个图像,但在图像之间有一些白色空间,并且不明白它们来自哪里..我可以使用浮点数来解决我的问题,但是我试图避免这种情况。如果有人能向我解释为什么会这样。我从其他问题中得到了一些提示,但它不起作用。
这是我的代码:
<html>
<head>
<style "text/css">
td, tr, img { padding: 0px; margin: 0px; border: none; }
table { border-collapse: collapse;}
</style>
</head>
<body style="background: black;">
<center>
<table cellspacing="0" cellpadding="0">
<tr>
<td>
<img alt="" title="" src="http://i.min.us/ijCTdY.jpg" />
</td>
</tr>
<tr>
<td>
<img alt="" title="" src="http://i.min.us/jj7Yt6.jpg"/>
<img alt="" title="" src="http://i.min.us/ijCo96.jpg"/>
</td>
</tr>
</table>
</center>
</body>
您可以注意到顶部图像的高度为800像素,而其他图像的高度为400像素,我需要的是某种方形,图像之间没有任何空格。
img
s是内联元素。图像之间的水平空间来自HTML中图像之间的空白。同样的原因是人物here之间有一个空格。
所以,要解决这个问题,请删除空格:http://jsfiddle.net/xMW7N/2/
垂直空间也是因为图像是内联元素。差距是像g
和j
这样的字母中为下降者保留的空间。
要解决这个问题,请在vertical-align: top
:img
上设置http://jsfiddle.net/xMW7N/3/
虽然在你的情况下(如你的问题所述),设置float: left
工作得很好:http://jsfiddle.net/xMW7N/4/
这是因为float: left
强迫display: block
,所以由图像内联引起的所有问题都得到了解决。
它是标记本身的空白。如果删除换行符和两个图像之间的空格,则空格将消失。
空格被视为文本,作为单个空格字符。
没有表格,这更容易完成:http://jsfiddle.net/feSxA/
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
body {
background: black;
}
.imgHolder {
width: 800px;
margin: auto;
}
.imgHolder img {
float: left;
}
</style>
</head>
<body>
<div class="imgHolder">
<img alt="" title="" src="http://i.min.us/ijCTdY.jpg" />
<img alt="" title="" src="http://i.min.us/jj7Yt6.jpg" />
<img alt="" title="" src="http://i.min.us/ijCo96.jpg" />
</div>
</body>
</html>
尝试在表格元素中添加border =“0”
将display: block;
添加到您的图片。
这将消除由图像内联引起的任何间隙,但您可能需要将单元格分开以允许它们并排放置。
您还可以删除应该删除空格的空格。