Tenho um site de bootstrap em que o alternador de hambúrguer é adicionado quando o tamanho da tela é menor que 992 px. O código é assim:
<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>
Existe alguma possibilidade de alterar a cor do botão de alternância de hambúrguer?
css
twitter-bootstrap
bootstrap-4
Rehan
fonte
fonte
Respostas:
O
navbar-toggler-icon
(hambúrguer) no Bootstrap 4 usa um SVGbackground-image
. Existem 2 "versões" da imagem do ícone toggler. Um para uma barra de navegação clara e um para uma barra de navegação escura ...navbar-dark
para alternar entre claro / branco em fundos mais escurosnavbar-light
para alternar entre escuro / cinza em fundos mais clarosPortanto, se quiser alterar a cor da imagem alternada para outra, você pode personalizar o ícone. Por exemplo, aqui eu defino o valor RGB para rosa (255,102,203). Observe o
stroke='rgba(255,102,203, 0.5)'
valor nos dados SVG:Demo http://www.codeply.com/go/4FdZGlPMNV
OFC, outra opção para usar apenas um ícone de outra biblioteca ou seja: Font Awesome, etc.
Atualize o Bootstrap 4.0.0:
A partir do Bootstrap 4 Beta,
navbar-inverse
agoranavbar-dark
pode ser usado em barras de navegação com cores de fundo mais escuras para produzir links mais claros e cores alternadas.Como alterar as cores do Bootstrap 4 Navbar
fonte
.navbar-inverse
classe. você pode escolher entre duas classes:.navbar-light
ou.navbar-dark
.Use um ícone incrível de fonte como o ícone padrão da sua barra de navegação.
Ou tente isso em versões antigas de fontes incríveis:
fonte
Você pode criar o botão de alternância com css apenas de uma forma muito fácil, não há necessidade de usar nenhuma fonte em SVG ou ... forame.
Seu botão:
Seu estilo de botão:
}
Estilo de sua linha horizontal:
}
Demo
fonte
basta inserir a classe
navbar-dark
ounavbar-light
no elemento nav:fonte
A maneira mais fácil é substituir este código de bootstrap padrão:
por este :
E não se esqueça de adicionar este código também ao seu arquivo:
Espero que ajude!!
fonte
Se você baixou o bootstrap, vá para bootstrap-4.4.1-dist / css / bootstrap.min
Eu. encontre o
.navbar-light .navbar-toggler-icon
ou o.navbar-dark .navbar-toggler-icon
seletorii. selecione o atributo background-image e seu valor. O snippet é semelhante a este:
iii. copie o snippet e cole-o em seu CSS personalizado
iv. mude o
stroke=’rgba(0,0,0,0.5)’
valor para o seu valor rgba preferidofonte
EDIT: meu mal! Com minha resposta, o ícone não se comportará como um alternador Na verdade, ele será mostrado mesmo quando não estiver recolhido ... Ainda pesquisando ...
Isso funcionaria:
O truque proposto pela minha resposta é substituir o
navbar-toggler
por uma classe de botão clássicabtn
e, como respondido anteriormente, usar uma fonte de ícone.Observe que, se você mantiver
<button class="navbar-toggler">
, o botão terá uma forma "estranha".Conforme declarado neste post no github , o bootstrap usa alguns "truques de css", então os usuários não precisam depender de fontes.
Portanto, apenas não use a
"navbar-toggler"
classe em seu botão se quiser usar uma fonte de ícone.Felicidades.
fonte
Acabei de desenvolver uma solução consideravelmente mais fácil. (Sim, eu sei que esta é uma pergunta antiga, mas alguém pesquisando o mesmo problema pode achar isso útil.)
Eu estava usando um SVG chamado hamburger.svg. Eu olhei para ele com um editor de texto e não consegui encontrar nada que definisse uma cor para as três linhas - estou supondo que o padrão é preto porque esse é certamente o comportamento que recebo - então simplesmente adicionei um parâmetro de "traço" ao a definição do SVG. Isso não funcionou BASTANTE - as bordas das três linhas eram da minha cor escolhida (branco), mas o resto da linha ainda era preta, então eu adicionei um parâmetro de "preenchimento" também. E isso funcionou!
Aqui está o código para o hamburger.svg original em sua totalidade:
E aqui está o código para o novo SVG depois de editá-lo e salvá-lo como hamburger_white.svg:
Como você pode ver se rolar para a direita, tudo que fiz foi adicionar:
até o final do caminho. A outra coisa que tive que fazer foi mudar o nome do arquivo do hambúrguer no HTML. Sem mexer no CSS e sem a necessidade de rastrear outro ícone.
Fácil! Você pode imitar isso para fazer seu hambúrguer da cor que quiser.
fonte
Se você trabalha com a versão sass do bootstrap,
_variables.scss
você pode encontrar$navbar-inverse-toggler-bg
ou$navbar-light-toggler-bg
onde pode alterar a cor e o estilo do botão de alternância.Em html você tem que usar
navbar-inverse
ounavbar-light
dependendo de qual versão você deseja usar.fonte
Como alternativa, você sempre pode tentar uma solução alternativa mais simples, usando outro ícone, por exemplo:
ref: https://www.w3schools.com/icons/fontawesome_icons_webapp.asp
ref: https://www.w3schools.com/icons/bootstrap_icons_glyphicons.asp
Assim, você ganha controle total sobre sua cor e tamanho:
( o estilo do botão aplicado é apenas para um teste rápido ):
fonte
Ícone da barra de navegação de bootstrap padrão
<span class="navbar-toggler-icon"></span>
Adicionar ícone impressionante de fonte e remover
class="navbar-toggler-icon"
<span> <i class="fas fa-bars" style="color:#fff; font-size:28px;"></i> </span>
fonte
Verifique a melhor solução para navegação de hambúrguer personalizado.
imagem de demonstração
fonte