我们可以通过 skew() 的变形属性来对这个矩形进行斜向拉伸
.box{
width: 200px;
height: 100px;
background-color: blue;
transform: skewX(-45deg);
}

有没有办法只让容器的形状倾斜,而保持其内容不变呢?
我们可以对内容再应用一次反向的 skew() 变形,从而抵消容器的变形 效果,
.button{
display: block;
width: 100px;
height: 50px;
background-color: red;
transform: skewX(-45deg);
}
.button>div{
transform: skewX(45deg);
}

嵌套元素方案
.button{
position: relative;
}
.button::before{
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
transform: skewX(-45deg);
background-color: black;
z-index: -1;
}
<a href="#yolo" class="button">
Click me
</a>