0

我正在创建一个以小三角形为背景的气泡,但唯一的问题是它还需要圆角。我不完全确定如何做到这一点,但任何黑客或任何东西都会受到赞赏。

这就是我所拥有的

HTML

<div class="image">
    <img class="test" src="http://fc00.deviantart.net/fs71/f/2011/322/e/2/e292b11555866aec8666ded2e63ee541-d4gl4vg.png" alt="leopard" />
</div>

CSS

.image {
    position:relative;
    width:340px;
    background:orange;
}
.image:before, .image:after {
    border-left: 20px solid white;
    content: "";
    left: 0;
    position: absolute;
    width: 0;
}
.image:before {
    border-bottom: 5px solid transparent;
    height: 34px;
    top: 0;
}
.image:after {
    top: 39px;
    bottom:0;
    border-top: 5px solid transparent;
}
.test {
    display:block;
    width:100%;
}

这是一个小提琴。http://jsfiddle.net/yL7Hg/

编辑:如果有帮助,由于我的设计工作方式,我只需要左上角的半径即可。我可以在.image上使用边框半径来获得右上角。

4

3 回答 3

1

试试这个:http ://www.html5rocks.com/en/tutorials/masking/adobe/

使用 HTML5 进行剪切和遮罩。

它使用 HTML5,因此具有浏览器限制。但是所有最近的浏览器都支持它。

于 2013-09-11T23:45:18.923 回答
1

这里是:

http://jsfiddle.net/HYgbu/

<div class="mask">
<img class="second" src="http://fc00.deviantart.net/fs71/f/2011/322/e/2/e292b11555866aec8666ded2e63ee541-d4gl4vg.png" alt="leopard" /></div>

我知道它不是一个完美的解决方案,但它仍然是我的第一个想法。

于 2013-09-12T00:21:07.770 回答
1

这可以通过标准 CSS 更容易实现。只需设置 2 个 DIV,一个用于箭头,另一个以图像为背景(而不是 IMG 标签):

<div class="arrow" ></div>
<div class="test" ></div>

和2个相应的类:

.arrow {
    width: 0; 
    height: 0; 
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent; 
    border-right:35px solid #1E0C01; 
    float:left;
    margin-top:50px;
}

.test {
    margin-left:35px;
    width:340px;
    height: 240px;
    background-size:cover;
    background-image: url("http://fc00.deviantart.net/fs71/f/2011/322/e/2/e292b11555866aec8666ded2e63ee541-d4gl4vg.png");

就是这样:http: //jsfiddle.net/yL7Hg/5/

于 2013-09-12T01:18:56.197 回答