我想使用display: table-*
CSS 属性来格式化照片列表。我相信下面是它的“正确”实现,理论上它没有任何问题,但它在 Firefox 和 Safari 中显示,表格布局搞砸了,正如你从边框看到的那样。为了进行比较,请尝试将下面的两个 img 标签包装在<div></div>
; 这显示正确。
这是 img 标签特有的东西,也许它认为它有多大与它实际占用的空间有多大。这是一个错误吗?
下面的代码是对这个问题的最小挑衅。
<!DOCTYPE html>
<html>
<head>
<style>
.photos {display: table; border-collapse: collapse;}
.photos > div {display: table-row}
.photos > div > * {
display: table-cell;
vertical-align: top;
border: 1px solid #000;
padding: 10px;
}
</style>
</head>
<body>
<div class="photos">
<div>
<p>Hello World</p>
<img src="http://www.freeimages.co.uk/galleries/nature/weather/thumbs/frost_oak_leaf_winter_218310.jpg" />
</div>
<div>
<p>Hello World</p>
<img src="http://www.freeimages.co.uk/galleries/nature/weather/thumbs/frost_oak_leaf_winter_218310.jpg" />
</div>
</div>
</body>
</html>