我的最终版本:演示http://dabblet.com/gist/3149345(适用于 IE9+、Opera 10.5+、Chrome、FF、Safari)
HTML结构:
<div class="comment b">
<a href="#" class="img-wrapper"><img src=""></a>
<div class="comment-content">
<p><!--a lot of text here--></p>
</div>
</div>
首先,我.img-wrapper
将 向左浮动,给它一个白色背景加上右上角和右下角的边框半径50%
。然后它上面的图像有黑色背景。
然后我在.comment
. 我给它们的宽度和高度都等于border-radius
用于.comment
(20px
在这种情况下)。我还给了它们position: absolute
并将它们的top
值设置为等于.img-wrapper
(130px
在这种情况下)的高度。
我给:before
元素一个白色背景,给:after
元素一个黑色背景。我还给:after
元素一个 100% 的左上角border-radius
,以便在图像包装器下也达到相同的圆角效果。
.comment {
width: 500px;
border-radius: 20px;
padding:20px;
margin: 5% auto;
position: relative;
background: #000;
color: #fff;
}
.a {
height: 90px;
}
.b:before, .b:after {
top: 130px;
left: 0;
width: 20px;
height: 20px;
display: block;
position: absolute;
content: '';
}
.b:before {
background: #fff;
}
.b:after {
border-radius: 100% 0 0 0;
background: #000;
}
.img-wrapper {
width: 130px;
height: 130px;
border-radius: 0 50% 50% 0;
margin: -20px 20px 20px -20px;
float: left;
background: #fff;
}
.img-wrapper img {
width: 120px;
height: 120px;
margin: 5px;
border-radius: 50%;
background: #000;
}