我想要一整张50 an乘以50 an的图片,这些图像需要互相粘合才能形成一个更大的图像。所以现在我让他们水平地,但不是垂直地,像这样:
如您所见,我在摆脱区域A (红色箭头)时遇到了问题。
我的代码现在看起来是这样的:
<table cellpadding="0" cellspacing="0">
<tr height="50px">
<td width="50px" height="50px">
<img src="image.png" height="50px" width="50px" />
</td>
<!-- etc -->
</tr>
<!-- etc -->
</table>
我应该使用什么CSS/HTML代码来改变高度?根据Chrome检查器,<td>
元素的高度为55 to。(arb?)
编辑:忘了我已经将单元格填充和间距设置为0。上面的图像和他们都在零。更新的代码示例。
编辑:IE中不存在"Area A“。来自Chrome的截图。
发布于 2011-08-30 13:55:19
图像与文本的基线对齐,为任何下划者留下文字下方的空间(如y和g)。您可以对图像使用css样式的display: block;
来防止这种行为。
在您的示例中,以下内容将起作用:
table img
{
display:block;
}
table
{
border-collapse:collapse;
}
td
{
padding: 0;
}
您不需要指定cellpadding="0" cellspacing="0"
,也不需要指定tr
和td
元素的高度和宽度。
在表中指定css类可能是有意义的,这样这些样式只会影响所需的元素。
例如,<table class="tiledImages">
在您的html,然后table.tiledImages
在您的css。
如果您只需要重复您的映像,您是否考虑过将其设置为用于background-image
元素的div
?
div
{
width: 400px; /* example width */
height: 400px; /* example height */
background-image: url(image.png);
}
发布于 2011-08-30 13:52:10
您的表定义:<table cellspacing="0" cellpadding="0">
中有单元格填充和单元格间距的属性吗?
发布于 2011-08-30 13:54:40
我建议去掉高度和宽度设置,然后使用css使表折叠所有边框。
有点像
table {
border-collapse: collapse;
table-layout:fixed;
}
上面做了两件事。首先,它会导致所有表边框塌缩,以消除某些浏览器使用的默认边框。
其次,它使表绘制得更快,因为浏览器只需要计算第一行,因此表几乎立即开始显示。
https://stackoverflow.com/questions/7244258
复制相似问题