1

这就是我所拥有的:

<div style="width: 100%; background: red; text-align: center">
  <img src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e5/Plain-M%26Ms-Pile.jpg/280px-Plain-M%26Ms-Pile.jpg" height="170" width="170" style="border-radius:700px; border: 10px solid white;">
</div>

这就是我要的:

在此处输入图像描述

我在 CSS 中尝试了边框、嵌入阴影和许多其他选项,但它们似乎都不适用于我的目的。

有什么方法可以使 div 的背景小于内容而不必指定其高度?

4

3 回答 3

1

添加另一个 div 就可以了;

<div style="width: 100%; text-align: center">
  <div style="width:100%;height:100px;position:absolute;left:0;top:45px;background:red;z-index:-1;"></div>
  <img src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e5/Plain-M%26Ms-Pile.jpg/280px-Plain-M%26Ms-Pile.jpg" height="170" width="170" style="border-radius:700px; border: 10px solid white;">
</div>
于 2013-07-24T01:14:14.533 回答
1

像这样的东西(小提琴)?

div {
    margin: 40px 0;
}

img {
    margin: -40px 0;
}
于 2013-07-24T01:23:25.697 回答
1

我知道这很旧,但您可以使用背景大小和位置(如果需要)。

background-size: 50% 50%; /* background half the size of the div */
background-position: 50% 50%; /* to center it */
于 2017-04-25T14:55:09.367 回答