Ich habe eine Bootstrap-Website, auf der der Hamburger-Togler hinzugefügt wird, wenn die Bildschirmgröße weniger als 992 Pixel beträgt. Der Code ist wie folgt:
<button class="navbar-toggler navbar-toggler-right"
type="button" data-toggle="collapse"
data-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent"
aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
Gibt es eine Möglichkeit, die Farbe des Hamburger-Umschaltknopfs zu ändern?
Antworten:
Der
navbar-toggler-icon
(Hamburger) in Bootstrap 4 verwendet eine SVGbackground-image
. Es gibt 2 "Versionen" des Togler-Symbolbildes. Eine für eine helle Navigationsleiste und eine für eine dunkle Navigationsleiste ...navbar-dark
für einen hell / weißen Togler auf dunkleren Hintergründennavbar-light
für einen dunkel / grauen Togler auf helleren HintergründenWenn Sie die Farbe des Togler-Bilds in etwas anderes ändern möchten, können Sie das Symbol anpassen. Zum Beispiel setze ich hier den RGB-Wert auf pink (255,102,203). Beachten Sie den
stroke='rgba(255,102,203, 0.5)'
Wert in den SVG-Daten:Demo http://www.codeply.com/go/4FdZGlPMNV
OFC, eine weitere Option, um einfach ein Symbol aus einer anderen Bibliothek zu verwenden, z. B.: Font Awesome usw.
Update Bootstrap 4.0.0:
Ab Bootstrap 4 Beta kann
navbar-inverse
es jetztnavbar-dark
auf Navigationsleisten mit dunkleren Hintergrundfarben verwendet werden, um hellere Link- und Togler-Farben zu erzeugen.So ändern Sie die Farben der Bootstrap 4-Navigationsleiste
quelle
.navbar-inverse
Klasse. Sie können zwischen zwei Klassen wählen:.navbar-light
oder.navbar-dark
.Verwenden Sie ein Schriftart-Symbol als Standardsymbol für Ihre Navigationsleiste.
Oder probieren Sie dies bei alten Versionen aus:
quelle
Sie können die Togler-Schaltfläche mit CSS nur auf sehr einfache Weise erstellen. Es ist nicht erforderlich, Schriftarten in SVG oder ... foramt zu verwenden.
Dein Button:
Ihr Tastenstil:
}}
Ihre horizontale Linie Stil:
}}
Demo
quelle
Fügen Sie einfach die Klasse
navbar-dark
odernavbar-light
das nav-Element ein:quelle
Am einfachsten ist es, diesen Standard-Bootstrap-Code zu ersetzen:
dadurch :
Und vergessen Sie nicht, diesen Code auch zu Ihrer Datei hinzuzufügen:
Ich hoffe es hilft!!
quelle
Wenn Sie bootstrap heruntergeladen haben, gehen Sie zu bootstrap-4.4.1-dist / css / bootstrap.min
ich. finde den
.navbar-light .navbar-toggler-icon
oder den.navbar-dark .navbar-toggler-icon
Selektorii. Wählen Sie das Hintergrundbildattribut und seinen Wert aus. Das Snippet sieht folgendermaßen aus:
iii. Kopieren Sie das Snippet und fügen Sie es in Ihr benutzerdefiniertes CSS ein
iv. Ändern Sie den
stroke=’rgba(0,0,0,0.5)’
Wert in Ihren bevorzugten rgba-Wertquelle
EDIT: mein schlechtes! Mit meiner Antwort verhält sich das Symbol nicht wie ein Toggler. Eigentlich wird es angezeigt, auch wenn es nicht zusammengeklappt ist ... Immer noch auf der Suche ...
Das würde funktionieren:
Der von meiner Antwort vorgeschlagene Trick besteht darin, die
navbar-toggler
durch eine klassische Schaltflächenklasse zu ersetzenbtn
und dann, wie zuvor beantwortet, eine Symbolschriftart zu verwenden.Beachten Sie, dass
<button class="navbar-toggler">
die Schaltfläche eine "seltsame" Form hat, wenn Sie sie beibehalten .Wie in diesem Beitrag auf Github angegeben , verwendet Bootstrap einige "CSS-Tricks", sodass Benutzer sich nicht auf Schriftarten verlassen müssen.
Verwenden Sie die
"navbar-toggler"
Klasse also einfach nicht auf Ihrer Schaltfläche, wenn Sie eine Symbolschrift verwenden möchten.Prost.
quelle
Ich habe gerade eine wesentlich einfachere Lösung entwickelt. (Ja, ich weiß, dass dies eine alte Frage ist, aber jemand, der das gleiche Problem untersucht, kann dies nützlich finden.)
Ich habe eine SVG namens hamburger.svg verwendet. Ich habe es mit einem Texteditor betrachtet und konnte nichts finden, das eine Farbe für die drei Zeilen festlegte - ich vermute, es ist standardmäßig schwarz, da dies sicherlich das Verhalten ist, das ich bekomme - also habe ich einfach einen "Strich" -Parameter hinzugefügt die Definition der SVG. Das hat nicht ganz funktioniert - die Ränder der drei Linien waren meine gewählte Farbe (weiß), aber der Rest der Linie war immer noch schwarz, also habe ich auch einen "Füll" -Parameter hinzugefügt. Und das hat den Trick gemacht!
Hier ist der Code für die ursprüngliche hamburger.svg in ihrer Gesamtheit:
Und hier ist der Code für die neue SVG, nachdem ich sie bearbeitet und als hamburger_white.svg gespeichert habe:
Wie Sie sehen können, wenn Sie ganz nach rechts scrollen, habe ich nur Folgendes hinzugefügt:
bis zum Ende des Weges. Das andere, was ich tun musste, war den Dateinamen des Hamburgers im HTML zu ändern. Kein Durcheinander mit dem CSS und keine Notwendigkeit, ein anderes Symbol aufzuspüren.
Easy-peasey! Sie können dies nachahmen, um Ihrem Hamburger eine beliebige Farbe zu verleihen.
quelle
Wenn Sie mit sass Version von Bootstrap arbeiten
_variables.scss
können Sie finden$navbar-inverse-toggler-bg
oder$navbar-light-toggler-bg
wo können Sie die Farbe und den Stil Ihrer Umschaltknopf ändern.In HTML müssen Sie verwenden
navbar-inverse
odernavbar-light
abhängig davon, welche Version Sie verwenden möchten.quelle
Alternativ können Sie immer eine einfachere Problemumgehung versuchen, indem Sie ein anderes Symbol verwenden, zum Beispiel:
ref: https://www.w3schools.com/icons/fontawesome_icons_webapp.asp
ref: https://www.w3schools.com/icons/bootstrap_icons_glyphicons.asp
So erhalten Sie die vollständige Kontrolle über Farbe und Größe:
( Der angewendete Stil der Schaltfläche dient nur zum schnellen Testen ):
quelle
Standard-Bootstrap-Navigationssymbol
<span class="navbar-toggler-icon"></span>
Font Awesome Icon hinzufügen und entfernen
class="navbar-toggler-icon"
<span> <i class="fas fa-bars" style="color:#fff; font-size:28px;"></i> </span>
quelle
Überprüfen Sie die beste Lösung für benutzerdefinierte Hamburger Navi.
Demo-Bild
quelle