我对块元素上的背景图像有一个小问题,前面是浮动元素。
我将图像浮动到左侧,然后是H1
。正如预期的那样,H1
(这是一个blocl级元素)在图像后面流动,但它的内容(实际标题)出现在图像的右侧。
不幸的是,我在H1
上使用的背景图片必须与左边对齐,因此出现在实际的img
后面,因为与内容不同,这不是由浮动行为。
示例:
(我将第二个标题设置为clear: left
以显示它应该是什么样子。)
一种解决方案是将标题的左边距设置为略高于浮动图像的宽度,但这需要我事先知道它的宽度。
另一种选择是在h1
内的元素中添加标题的图标,但这在语义上并不正确。
是否有更好的仅限css的解决方案,不需要额外的元素?
答案 0 :(得分:10)
将overflow:hidden
添加到h1
新 fiddle
答案 1 :(得分:2)
我有点困惑。
如果我按照你的建议行事:
将标题的左边距设置为a 比浮动图像更多 宽度
看起来像这样:http://jsfiddle.net/WwuqG/1/
我的困惑来自于你的问题似乎......修复起来非常简单。
float: left
添加到<h1>
:http://jsfiddle.net/WwuqG/2/ 这适用于任何width
图片:http://jsfiddle.net/WwuqG/3/
是这样,还是我误解了?