Come faccio ad allineare un elemento della navbar a destra?
Voglio avere il login e la registrazione a destra. Ma tutto quello che provo non sembra funzionare.
<div>
intorno al <ul>
con l'atributo: style="float: right"
<div>
intorno al <ul>
con l'attributo: style="text-align: right"
<li>
!important
alla finenav-item
in nav-right
nel <li>
pull-sm-right
al <li>
align-content-end
al <li>
<div id="app" class="container">
<nav class="navbar navbar-toggleable-md navbar-light bg-faded">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a class="navbar-brand" href="#">Navbar</a>
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricingg</a>
</li>
</ul>
<ul class="navbar-nav " >
<li class="nav-item">
<a class="nav-link" href="{{ url('/login') }}">Login</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ url('/register') }}">Register</a>
</li>
</ul>
</nav>
@yield('content')
</div>
Bootstrap 4 ha molti modi diversi per allineare gli elementi della navbar. float-right
non funzionerà perché la navbar è ora flexbox
.
Puoi usare il nuovo mr-auto
per il margine destro automatico sulla prima (sinistra) navbar-nav
.
In alternativa, ml-auto
potrebbe essere usato sulla 2a (destra) navbar-nav
, o se hai solo una singola navbar-nav
.
<div id="app" class="container">
<nav class="navbar navbar-toggleable-md navbar-light bg-faded">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a class="navbar-brand" href="#">Navbar</a>
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricingg</a>
</li>
</ul>
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="{{ url('/login') }}">Login</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ url('/register') }}">Register</a>
</li>
</ul>
</nav>
</div>
http://www.codeply.com/go/P0G393rzfm
Ci sono anche utils per flexbox. In questo caso, hai 2 navbar-nav
, quindi justify-content-between
in navbar-collapse
funzionerebbe per pareggiare lo spazio tra loro,
<div class="navbar-collapse collapse justify-content-between">
<ul class="navbar-nav mr-auto">
..
</ul>
<ul class="navbar-nav">
..
</ul>
</div>
hr> Aggiornamento per Bootstrap 4.0 e successivi
A partire da Bootstrap 4 beta, ml-auto
funzionerà ancora per spingere gli elementi a destra. Basta essere consapevoli che le classi navbar-toggleable-
sono cambiate in navbar-expand-*
.
Aggiornato navbar a destra per Bootstrap 4
hr>
Un altro frequente scenario di allineamento a destra della navbar di Bootstrap 4 include un pulsante a destra che rimane fuori dal mobile collapse nav in modo che sia sempre mostrato a tutte le larghezze.
Pulsante di allineamento a destra che è sempre visibile
[3];
Nel mio caso, volevo solo una serie di pulsanti di navigazione / opzioni e ho scoperto che questo funzionerà:
<div class="collapse navbar-collapse justify-content-end" id="navbarCollapse">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">Sign Out</a>
</li>
</ul>
</div>
Quindi, aggiungerai justify-content-end
al div e ometterai mr-auto
nella lista.
Ecco un esempio funzionante.
Sono nuovo di stack overflow e nuovo dello sviluppo front end. Questo è ciò che ha funzionato per me. Quindi non volevo che gli elementi della lista fossero visualizzati.
.hidden {
display:none;
}
#loginButton{
margin-right:2px;
}
<nav class="navbar navbar-toggleable-md navbar-light bg-faded fixed-top">
<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>
<a class="navbar-brand" href="#">NavBar</a>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
<li class="nav-item active hidden">
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item hidden">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item hidden">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
<form class="form-inline my-2 my-lg-0">
<button class="btn btn-outline-success my-2 my-sm-0" type="submit" id="loginButton"><a href="#">Log In</a></button>
<button class="btn btn-outline-success my-2 my-sm-0" type="submit"><a href="#">Register</a></button>
</form>
</div>
</nav>