这就是我想要实现的目标:
| |
| bla bla text text |
| more text and bla |
+---------------------------+
|IMAGE IMAGE IMAGE IMAGE IMA|
|GE IMAGE IMAGE IMAGE IMAGE |
|IMAGE IMAGE IMAGE IMAGE IMA|
+---------------------------+
| and the text goes |
| on and on and on. |
| |
标记和CSS看起来像:
<div class="container">
<p>... text ...</p>
<img>
<p>... text ...</p>
</div>
.container {
padding: 100px;
}
注意:
我考虑的事情:
width
,而width: 100%
不包含父级的填充。 width: calc(100% + 200px)
应该有效,但浏览器支持为only 81%。box-sizing
在这里没用,因为我们关心父母的填充,而不是图像的填充。position: absolute
让我设置left: 0
和right: 0
以获得正确的宽度。但是,它会将图像从流中移出,因此后续文本会消失在其后面。<p>
元素上放置左右边距。但是我还必须为可能出现在里面的所有其他元素做到这一点。我可以用.container > *
做到这一点,但感觉很讨厌。有没有一种干净的方法来实现这一目标?
答案 0 :(得分:2)
.container {
padding: 100px;
border: 1px solid #000;
}
.img-holder { /* don't give it width property*/
margin-left: -100px;
margin-right: -100px;
}
p {
border: 1px solid #f00
}
img {
width: 100%;
}
&#13;
<div class="container">
<p>... text ...</p>
<div class="img-holder">
<img src="https://www.google.co.in/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png" alt="">
</div>
<p>... text ...</p>
</div>
&#13;
您可以根据需要设置图像样式
答案 1 :(得分:-1)
您可以使用
.container img{
width:100%;
}
它将根据父对象的宽度保持比率。