Ok, jeder weiß, dass Sie damit ein Dreieck bilden können:
#triangle {
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-bottom: 100px solid red;
}
Und das ergibt ein festes, ausgefülltes Dreieck. Aber wie würden Sie so ein hohles pfeilartiges Dreieck herstellen?
html
css
css-shapes
Tommay
quelle
quelle
Antworten:
Sie können das
before
oderafter
Pseudo-Element verwenden und etwas CSS darauf anwenden. Es gibt verschiedene Möglichkeiten. Sie können beidebefore
undafter
und hinzufügen und jeden von ihnen drehen und positionieren, um einen der Balken zu bilden. Eine einfachere Lösung besteht darin, nur dembefore
Element zwei Ränder hinzuzufügen und es mit zu drehentransform: rotate
.Scrollen Sie nach unten, um eine andere Lösung zu finden, bei der anstelle der pseuso-Elemente ein tatsächliches Element verwendet wird
In diesem Fall habe ich die Pfeile als Aufzählungszeichen in eine Liste eingefügt und
em
Größen verwendet, damit sie mit der Schriftart der Liste richtig dimensioniert werden.Natürlich müssen Sie nicht verwenden
before
oderafter
, Sie können den gleichen Trick auch auf ein normales Element anwenden. Für die obige Liste ist dies praktisch, da Sie kein zusätzliches Markup benötigen. Aber manchmal möchten (oder brauchen) Sie das Markup trotzdem. Sie können eindiv
oderspan
dafür verwenden, und ich habe sogar gesehen, dass Leute dasi
Element sogar für "Symbole" recyceln . Das Markup könnte also wie folgt aussehen. Ob<i>
dies richtig ist, ist umstritten, aber Sie können auch span verwenden, um auf der sicheren Seite zu sein.Wenn Sie mehr Inspiration suchen, sollten Sie sich diese fantastische Bibliothek mit reinen CSS-Symbolen von Nicolas Gallagher ansehen . :) :)
quelle
border-color
, da der Pfeil eigentlich kein Zeichen, sondern ein Rand ist. Zum Positionieren können Sieposition: relative
den Pfeil hinzufügen und mittop
und verschiebenleft
. Ich habe sowohl im modifizierten ersten Snippet als auch die Positionierung im zweiten Snippet gezeigt. Beachten Sie die schöne Kombination,li:hover::before
die sich auf dasbefore
Pseudoelement eines schwebenden Listenelements bezieht .0
, sodass Sie einen negativen Rand benötigen würden, um Leerzeichen aufzuheben. Im zweiten Snippet können Sie beispielsweise hinzufügenmargin-left: -0.4em;
, dass der Pfeil ohne Leerzeichen neben dem vorherigen Wort steht.Dies kann viel einfacher gelöst werden als die anderen Vorschläge.
Zeichnen Sie einfach ein Quadrat und wenden Sie eine
border
Eigenschaft auf nur 2 Verbindungsseiten an.Drehen Sie dann das Quadrat entsprechend der Richtung, in die der Pfeil zeigen soll, zum Beispiel:
transform: rotate(<your degree here>)
quelle
Reaktionsschnelle Chevrons / Pfeile
sie die Größe automatisch mit Ihrem Text und farbigen die gleiche Farbe. Plug and Play :)
jsBin Demo-Spielplatz
quelle
v. 6.2.0 September 2012 1
Unicode-UTF-8
Zeichen auf 110182 ansteigt und HTML5 und das Standard-UTF-8 jetzt angezeigt werden, sieht unser Zeichen gut aus: unicode.org/Public/UNIDATA/UnicodeData.txt\231d
könnte der Charakter hier verfügbar sein, aber nicht auf einem Mac oder einem Android-Gerät. HTML-Version und Antwortkodierung haben nichts damit zu tun.Hier ist ein anderer Ansatz:
1) Verwenden Sie das Multiplikationszeichen:
×
×2) Verstecke die Hälfte davon mit
overflow:hidden
3) Fügen Sie dann ein Dreieck als Pseudoelement für die Spitze hinzu.
Der Vorteil hierbei ist, dass keine Transformationen notwendig sind. (Es wird in IE8 + funktionieren)
GEIGE
quelle
Verwenden Sie einfach vor und nach Pseudo-Elementen - CSS
quelle
Ein anderer Ansatz Grenzen und keine CSS3 - Eigenschaften:
quelle
>
selbst ist sehr wunderbarer Pfeil! Stellen Sie einfach ein Div damit voran und stylen Sie es.quelle
Links Rechts Pfeil mit Hover-Effekt mit Roko C. Buljan Box-Shadow-Trick
quelle
Ich musste
input
in meinem Projekt einen in einen Pfeil ändern . Unten ist die letzte Arbeit.Hier Geige
quelle
Ähnlich wie Roko C, jedoch etwas mehr Kontrolle über Größe und Platzierung.
quelle