错误实际上是因为你的父元素引起的。您的宽度设置为349px
。根据可用的屏幕空间,某些浏览器默认情况下会进行四舍五入或缩小。
它通常是使用百分比时使用漂亮的宽度,一个很好的做法。
解:http://jsfiddle.net/vonkly/susXf/29/
该解决方案允许对未设置的,任意的图像宽度,以限定缠绕元件的宽度,因此,孩子span
和<p>
宽度。这可以实现OP的目标,而无需手动输入自定义类或宽度声明。
CSS
img {
width: 100%;
max-width: 100%;
}
.videoThumb {
position: relative;
display: inline-block;
padding: 0;
}
.videoThumb .details {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
color: #000;
background-color: red;
}
.details p {
display: block;
padding: 14px 4%;
margin: 0;
}
HTML
<div class="videoThumb">
<img src="http://www.chainreactiondisco.com/images/disco_panel_02_01.jpg">
<span class="details">
<p><!-- containing element for black box -->
Watch<br />
Signature Manager vs. Mail Dislcaimers
</p>
<span><!-- /details -->
</div><!-- /videoThumb -->
注意
如果您打算使用span.details
内的任何<p>
标签,我建议您改变一下css。您只需将.details p {}
更改为.details span {}
即可。然后转到您的HTML并将<p>
标签更改为<span>
标签。
来源
2011-09-19 09:44:02
Ben
我在Chrome浏览器中看不到任何差距13.0.782.220 m – Kyle
这与我的相同版本.... :(关于不同的浏览器呢? – Chris
嗯,如果我使用Firefox并调整窗口大小,我可以看到它固定和打破所以一个状态它会很好,拖动窗口一个像素或更小,它会打破。铬不会这样做,它总是打破。 – Chris