Ich möchte auf einigen meiner Elemente auf einer Website ein Label hinzufügen und ein Label erstellen, bei dem es sich um eine Flagge handelt, die unten einen umgekehrten V-förmigen Ausschnitt hat.
Bisher habe ich das:
Allerdings muss der Hintergrund weiß sein und um diese Form herum in Lila und 1px umranden. Ich habe versucht, die gleiche Form nur in Weiß in diesem zu passen, aber alles wurde unordentlich und ging nicht wie erwartet.
Vielleicht ist es ein falscher Ansatz, aber ich möchte mit Etiketten enden, die in etwa so aussehen:
Hier ist eine etwas andere Methode, die Pseudo-Elemente und transformiere Rotationen, um ein skizziertes Banner wie folgt zu erstellen:
position: absolute
pseudo-elements, :before
und :after
:
overflow: hidden
auf dem Elternteil abgeschnitten, um unser Banner zu bilden:
box-shadow
erstellt, und die beiden Winkel werden durch Ziehen / Drücken der x-Achse um 46px nicht überlappt - box-shadow: 46px 0 0 3px #000
Mit CSS:
Sie können CSS-Transformationen für Pseudoelemente verwenden, um den Hintergrund mit einem < stark> transparentes umgekehrtes Dreieck unten:
Beachten Sie, dass Sie in den Eigenschaften transform
und transform-origin
Vendorenpräfixe hinzufügen müssen, um die Browserunterstützung zu maximieren. Weitere Informationen finden Sie unter canIuse .
Mit SVG
Ein anderer Ansatz besteht darin, ein Inline-SVG mit dem Polygon-Element zu verwenden:
DEMO:
Mein Ansatz verwendet verzerrte Elemente und ermöglicht Ihnen, diese schnell an Ihre Bedürfnisse anzupassen.
Ich habe versucht, CSS zu aktualisieren, um den gewünschten Effekt zu erzielen:
Geige: Ссылка
Hier ist, was ich herausgefunden habe.
Es entspricht dem, wonach Sie gesucht haben, aber ich denke, es sollte einen "besseren Weg" geben, als mit der Grenze zu spielen.
HTML
%Vor%CSS
%Vor%Eine schnelle Abhilfe besteht darin, sie zu drehen:
%Vor%Eine andere Lösung wäre ein SVG-Pfad, hier ist eine Geige! .
Tags und Links html css svg css-shapes