【发布时间】:2021-11-21 00:55:49
【问题描述】:
我想显示一个左对齐的图像(在左/右有一些填充)但在表格单元格中垂直居中,同时保持文本水平和垂直居中。
JSFiddle 完整示例:
https://jsfiddle.net/6bsgkytq/
<tr>
<td>
<img title="Out of stock" src="..."><!-- This image may or may not exist -->
<a href="">4000.4</a>
</td>
<td>Lemon soda</td>
<td>10/10/2021</td>
<td>London, United Kingdom</td>
<td>Waiting</td>
</tr>
img {
vertical-align: middle;
}
使用这段代码,结果是这样的:
我想要:
- 让文本居中在单元格上(水平和垂直),无论图像是否存在;我可以将图像作为
td背景,但我不想要,因为我希望将title属性显示为带有更多信息的工具提示 - 图像垂直居中但左对齐
- 图片左边有一个padding,右边有可能(通过增加列宽 - 现在固定为 90px - 如果它太小而无法处理图片和文字)
像这样:
我宁愿避免使用 javascript,只使用 HTML/CSS。
【问题讨论】:
-
把图片放在单独的td中。
-
@Grumpy 我不喜欢这样,因为我需要使用
colspan合并头部单元格(对于没有图像的行也是如此,以使文本居中)。是不是可以只使用 CSS 对齐图像?
标签: html css html-table