边界半径与css三角形

时间:2014-03-10 09:17:06

标签: css cross-browser css3 css-shapes

我有a rectangle,对角线的每一边都有自己的颜色

enter image description here

div {
    width: 0;
    height: 0;    
    border-left: 150px solid green;
    border-top: 100px solid gray;
}

现在我想为div添加一个border-radius,但后来我发现除了左下角之外,这对所有边都有效。

所以,如果我添加:

border-radius: 10px 10px 10px 0;

我得到this

enter image description here

..但是当我添加左下边界半径时,我得到this

enter image description here

1)为什么会这样?

2)有一个简单的解决方法吗?

编辑:

我正在使用Chrome,但我只是看了一个firefox和IE,结果不一样了!

火狐:

enter image description here

IE 11

enter image description here

发生了什么事?

1 个答案:

答案 0 :(得分:5)

尝试添加包装容器:

<div class="wrap">
    <div class="triangle"></div>
</div>

这种风格:

.wrap {
    display: inline-block;
    overflow: hidden;
    border-radius: 10px;
}

overflow: hidden;应该可以解决问题。

演示:http://jsfiddle.net/dfsq/9xDVj/8/