Der Trick besteht darin, ein angled content mask und dann füllt den maskierten Bereich mit dem gewünschten Design, in diesem Fall eine Hintergrund-Gradienten zu erzeugen. Der Inhalt wird an die Form der Maske angepasst. Eine Maske ist einfach ein Behälter mit overflow:hidden
. Wenn eine CSS3-Transformation auf den Container angewendet wird (z. B. eine Drehung oder eine Schräglaufoperation), hat die Maske eine gedrehte oder verzerrte Form, und der Inhalt wird auf diese Form zugeschnitten. Ein Paar verschachtelte Masken, die äußere schief und die innere verschachtelt, erzeugt eine trapezförmige Maske mit 2 abgewinkelten Seiten. Wenn nur die innere Maske verdreht wird, entsteht ein Trapez mit einer angewinkelten Seite.
Both masks skewed Inner mask skewed
_________________ _________________
/ \ | \
/clipped content \ | clipped content \
/_____________________\ |__________________\
JSFiddle Demos:
HTML
<div class="main">
<div class="outer-mask">
<div class="inner-mask">
<div class="content">Styled content goes here</div>
</div>
</div>
</div>
CSS
.main {
position: relative;
}
.outer-mask {
position: absolute;
left: 95px;
top: 45px;
width: 390px;
height: 110px;
overflow: hidden;
-webkit-transform: skew(20deg, 0deg);
-ms-transform: skew(20deg, 0deg);
-o-transform: skew(20deg, 0deg);
transform: skew(20deg, 0deg);
}
.inner-mask {
position: absolute;
left: -45px;
top: 0px;
width: 390px;
height: 110px;
overflow: hidden;
-webkit-transform: skew(-40deg, 0deg);
-ms-transform: skew(-40deg, 0deg);
-o-transform: skew(-40deg, 0deg);
transform: skew(-40deg, 0deg);
}
Können Sie zeigen eine ** ** Zeichnung von dem, was Sie erreichen wollen? –