【发布时间】:2018-04-17 15:43:33
【问题描述】:
我需要创建一个斜率/有角度的元素,所以我尝试了skew() 变换。在这个元素内部,我有一个图像,我想覆盖父元素的整个区域,但是当我将skew() 应用于图像以使其笔直时,图像没有被完全覆盖。我知道我可以使用scale() 转换来覆盖图像,但这会模糊我的图像。我正在寻找的是下图。
还有其他方法吗?
* {
box-sizing: border-box;
margin: 0;
}
.container {
display: flex;
overflow: hidden;
flex-wrap: wrap;
margin: 0 -30px;
}
.container a {
border: 3px solid;
transform: skew(-30deg);
width: 20%;
overflow: hidden;
}
.container img {
max-width: 100%;
display: block;
transform: skew(30deg);
}
<div class="container">
<a href=""><img src="http://via.placeholder.com/350x150"></a>
<a href=""><img src="http://via.placeholder.com/350x150"></a>
<a href=""><img src="http://via.placeholder.com/350x150"></a>
<a href=""><img src="http://via.placeholder.com/350x150"></a>
<a href=""><img src="http://via.placeholder.com/350x150"></a>
</div>
【问题讨论】:
-
恕我直言,最简单和最快的方法就是扩展它,例如
scale(1.25).
标签: html css css-transforms