【发布时间】:2016-05-11 17:52:35
【问题描述】:
这是我试图用纯 CSS 创建的形状:
我有一个更完整的 jsfiddle http://jsfiddle.net/8Lxr5s57/7/。有没有更好、更有效的方法来达到同样的效果?
.angled_container {
background-color: #fff;
height: 200px;
position: relative;
overflow: hidden;
clear: both;
}
.angled_container:before,
.angled_container:after {
content: "";
width: 110%;
height: 100%;
display: block;
position: absolute;
top: 0;
}
.angled_container:before {
background-color: #606060;
transform: rotate(12deg);
-webkit-transform-origin: left top;
left: 0;
}
.angled_container:after {
background-color: #6bb2c6;
transform: rotate(-12deg);
-webkit-transform-origin: right top;
left: -10%;
}
.angled_container--open-left:before {
background-color: #6bb2c6;
z-index: 2;
}
.angled_container--open-left:after {
background-color: #606060;
z-index: 1;
}
<div class="angled_container angled_container--open-right"></div>
【问题讨论】:
-
你可以使用渐变吗? (浏览器支持仅 IE10+)。
-
当然,我可以使用渐变。
-
我试过了,渐变没有正确出来,因为它会产生一些非常锯齿状的边缘并破坏外观。
-
我可能只使用 SVG。比使用所有这些元素/伪元素更简单。
-
您找到解决问题的方法了吗?任何答案有帮助吗?
标签: css svg css-shapes