I have a bootstrap website where the Hamburger
is added when the screen is less than 992px. The HamBurger code is like so
<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>
Is there any possibility to change the color of the HamBurger button?
The
navbar-toggler-icon
(hamburger) in Bootstrap 4 uses an SVGbackground-image
. There are 2 "versions" of the toggler icon image. One for a light navbar, and one for a dark navbar...navbar-dark
for a light/white toggler on darker backgroundsnavbar-light
for a dark/gray toggler on lighter backgroundsTherefore, if you want to change the color of the toggler image to something else, you can customize the icon. For example, here I set the RGB value to pink (255,102,203). Notice the
stroke='rgba(255,102,203, 0.5)'
value in the SVG data:Demo http://www.codeply.com/go/4FdZGlPMNV
OFC, another option to just use an icon from another library ie: Font Awesome, etc..
Update Bootstrap 4.0.0:
As of Bootstrap 4 Beta,
navbar-inverse
is nownavbar-dark
to use on navbars with darker background colors to produce lighter link and toggler colors.How to change Bootstrap 4 Navbar colors
If you work with sass version of bootstrap in
_variables.scss
you can find$navbar-inverse-toggler-bg
or$navbar-light-toggler-bg
where you can change the color and style of your toggle button.In html you have to use
navbar-inverse
ornavbar-light
depending on which version you want to use.I just developed a considerably easier solution. (Yes, I know this is an old question but someone researching this same issue may find this useful.)
I was using an SVG called hamburger.svg. I looked at it with a text editor and couldn't find anything that was setting a colour for the three lines - I'm guessing it defaults to black because that's certainly the behaviour I get - so I simply added a "stroke" parameter to the definition of the SVG. That didn't QUITE work - the borders of the three lines were my chosen colour (white) but the rest of the line was still black so I added a "fill" parameter as well. And that did the trick!
Here is the code for the original hamburger.svg in its entirety:
And here is the code for the new SVG after I edited it and saved it as hamburger_white.svg:
As you can see if you scroll way over to the right, all I did was add:
to the very end of the path. The other thing I had to do was change the file name of the hamburger in the HTML. No messing with the CSS at all and no need to track down another icon.
Easy-peasey! You can imitate this to make your hamburger any colour you like.