我正在尝试制作另一个灯箱作为非常需要的 HTML/CSS/Javascript 实践,但我遇到了一个看起来微不足道的样式问题(而且可能是!)但我无法解决它。
我有一个div
包含一个img
. 无论我尝试什么(border
、、、、自动高度等) margin
,padding
我都无法进行div
缩小以匹配图像尺寸。我已将问题简化为:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
<title>Layout experiments</title>
<style type="text/css">
#lightbox {
margin: 0;
padding: 0;
position : fixed;
left : 50%;
margin-left : -320px;
top : 100px;
border-radius: 22px;
background : #e0e0f0;
color : #102020;
}
#lightbox img {
border-radius: 15px;
}
.imagebg {
margin : 7px;
background : black;
border-radius: 15px;
height : 100%;
}
</style>
</head>
<body>
<div id="lightbox">
<div class="imagebg">
<img src="picture.jpg">
</div>
</div>
</body>
</html>
'picture.jpg' 是 640x400,但容器 div 想要是 640x404,差异显示为图像下方的黑色条带。div 存在,因此我可以通过将其不透明度混合为 0 来将图像淡化为黑色,交换它,然后将其重新混合。
我查看了多个浏览器中的计算样式,但看不到 4px 增量来自何处。