【发布时间】:2016-05-10 18:50:08
【问题描述】:
我正在尝试在 CSS3 中实现以下容器。我尝试使用transform: skewY,但没有得到想要的结果。我知道我可以使用 3d 变换来实现它,但我想到了我们可爱的 Internet Explorer。我也尝试过使用伪元素,但我失去了它。有什么css规则可以增加右上角和右下角的高度吗?
谢谢
【问题讨论】:
标签: css css-shapes
我正在尝试在 CSS3 中实现以下容器。我尝试使用transform: skewY,但没有得到想要的结果。我知道我可以使用 3d 变换来实现它,但我想到了我们可爱的 Internet Explorer。我也尝试过使用伪元素,但我失去了它。有什么css规则可以增加右上角和右下角的高度吗?
谢谢
【问题讨论】:
标签: css css-shapes
您可以为此使用倾斜的伪元素(确保倾斜在伪元素上,而不是元素本身):
div {
position: relative;
height: 200px;
width: 80vw;
margin: 10vw;
}
div:after {
content: "";
position: absolute;
top: 0;
left: 0;
height: 90%;
width: 100%;
-webkit-transform: skewY(5deg);
-ms-transform: skewY(5deg);
transform: skewY(5deg);
background: gray;
z-index: -1;
}
div:before {
content: "";
position: absolute;
height: 90%;
width: 100%;
left: 0;
bottom: -20%;
background: gray;
-webkit-transform: skewY(-5deg);
-ms-transform: skewY(-5deg);
transform: skewY(-5deg);
z-index: -1;
}
html {
background: url(http://placekitten.com/g/300/300);
}
<div>Content!!</div>
【讨论】:
overflow-x:hidden,一切正常