Centering Brand Logo in Bootstrap Navbar

Centering brand logo in Bootstrap Navbar

Try this:

.navbar {
position: relative;
}
.brand {
position: absolute;
left: 50%;
margin-left: -50px !important; /* 50% of your logo width */
display: block;
}

Centering your logo by 50% and minus half of your logo width so that it won't have problem when zooming in and out.

See fiddle

Center bootstrap navbar brand logo

You can try this.

What I did is I created a div(.navbar-logo) that will enclose the .navbar-brand then apply Flexbox to center the logo.

then I implement some CSS to .navbar-toggle to make it positioned.

then set width to .navbar-header to make the alignment in desktop view.

/* Latest compiled and minified CSS included as External Resource*/
/* Optional theme */
@import url('https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css');body,html { height: 100%; margin: 0;}
/*=======================================================Header, footer and navbar========================================================*/
.navbar-logo{ display:flex; justify-content:center; align-items:center; height:50px; width:100%;}
.navbar-toggle{ position:absolute; top:5px; right:5px;}
.navbar-header{ width:100%;}
.navbar .navbar-nav { display: inline-block; float: none; margin-top: 2em; font-family: 'Ubuntu', sans-serif; font-weight: 400; font-style: normal; letter-spacing: 5px; text-transform: uppercase; font-size: 14px;}
.navbar { position: relative;}

.navbar-shrink .navbar-nav { display: none;}
.navbar-shrink.navbar { height: 6em;}
.navbar-shrink.navbar>.container>.navbar-header>.navbar-brand img { width: 250px; height: 44px;}
.navbar-default .navbar-nav>li>a { color: #fff; font-weight: 300;}
.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>.active { color: #808ba0;}
.navbar-default .navbar-nav>li>a:hover { color: #808ba0; font-weight: 300;}
#navbar-header { transition: 2s ease-in-out;}
.navbar-default { background-color: rgba(51, 55, 65, 0.9);}
.navbar-default.navbar-shrink { background-color: rgba(51, 55, 65, 0.9);}
.navbar { position: relative; border-radius: 0px; border: 0px; height: 10.5em; -webkit-transition: height 300ms ease-in-out; -moz-transition: height 300ms ease-in-out; -o-transition: height 300ms ease-in-out; transition: height 300ms ease-in-out;}
.navbar-fixed-top { position: fixed !important;}
.navbar-brand img { width: 250px; height: 44px;}
.nav { text-align: center;}
.navbar .navbar-collapse { text-align: center;}
.dropdown:hover .dropdown-menu { display: block; margin-top: 0;}
.mq-footer { text-align: center; font-family: 'Ubuntu', sans-serif; padding-bottom: 2em;}
.mq-footer>.container>#footer-copyright { font-size: 12px; color: #737373;}
.footer-icon { font-size: 25px; color: #737373; opacity: 0.5; padding-top: 1em; padding-right: 0.25em;}
.footer-icon:hover { opacity: 1; cursor: pointer;}
#footer-copyright { margin-top: 2em;}
#footer-links { margin-top: 2em;}
#footer-links ul { padding-left: 25px;}
#footer-links ul li { display: inline; margin-right: 25px;}
#footer-links ul li a { color: #333741;}
<div class="header" id="navbar-header">  <div navbar-shrink offset="50" scroll-class="navbar-shrink" class="navbar navbar-default navbar-fixed-top" role="navigation">    <div class="container">      <div class="navbar-header">        <div class="navbar-logo">        <a class="navbar-brand" href="/">              <img src="http://marquesslondon.herokuapp.com/images/logo.daa5186d.png">        </a>        </div>        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#js-navbar-collapse">              <span class="sr-only">Toggle navigation</span>              <span class="icon-bar"></span>              <span class="icon-bar"></span>              <span class="icon-bar"></span>            </button>      </div>      <div style="display: block">        <div class="collapse navbar-collapse" id="js-navbar-collapse">          <ul class="nav navbar-nav" id="navbar">            <li><a href="/">HOME</a></li>            <li class="dropdown">              <a class="dropdown-toggle" data-toggle="dropdown" href="#">TAILORING</a>              <ul class="dropdown-menu">                <li><a href="/process">Process</a></li>                <li><a href="/look">Our Look</a></li>              </ul>            </li>            <li><a ng-href="/lifestyle">LIFESTYLE</a></li>            <li><a ng-href="/story">STORY</a></li>            <li><a ng-href="/contact">GET IN TOUCH</a></li>          </ul>        </div>      </div>
</div> </div></div>

bootstrap 3 - how do I place the brand in the center of the navbar?

css:

.navbar-header {
float: left;
padding: 15px;
text-align: center;
width: 100%;
}
.navbar-brand {float:none;}

html:

<nav class="navbar navbar-default" role="navigation">
<div class="navbar-header">
<a class="navbar-brand" href="#">Brand</a>
</div>
</nav>

Bootstrap navbar logo in the center and items to the left und right

You can use pull-right class to align the items to the right, but it need few more modifications to work correctly.I have created a clean solution with the links that you provided.Enjoy!

body { background-color: blueviolet !important; }.navbar {            position: relative;            top:10px;      }
.brand { position: absolute; left: 50%; margin-left: -50px !important; display: block; }
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js"></script><script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script><script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
<!--If you want to add background image add it to the class below--> <div class="container-fluid"><!--add this line--> <div class="row"><!--add this line--> <div class="col-md-12"><!--add this line--> <nav class="navbar navbar-expand-lg navbar-light bg-light"> <div class="container-fluid"> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <a class="brand" style="margin: 0; float: none;" href="#"> <!--add logo source--> <img src="icon.png" alt="logo" title="logo" height="100" with="50" /> </a> <div class="collapse navbar-collapse" id="navbarNavAltMarkup"> <ul class="navbar-nav mr-auto"> <li class="nav-item active"><a href="#" class="nav-link">Status</a></li> <li class="nav-item"><a href="#" class="nav-link">Download</a></li> <li class="nav-item"><a href="#" class="nav-link">Teamspeak</a></li> <li class="nav-item"><a href="#" class="nav-link">Teamspeak</a></li> </ul> <ul class="navbar-nav pull-right"> <li class="nav-item"><a href="#" class="nav-link">Teamspeak Bot</a></li> <li class="nav-item"><a href="#" class="nav-link">Travel</a></li> <li class="nav-item"><a href="#" class="nav-link">Plex</a></li> <li class="nav-item"><a href="#" class="nav-link">Contact</a></li> </ul> </div> </div> </nav> </div><!--add this line--> </div><!--add this line-->
<!--New Row for the main content--> <div class="row"> <div class="col-md-12"> <!--Main content--> </div> </div> </div><!--add this line-->

Bootstrap 4 Navbar align logo center and toggle icon on the left

The Bootstrap 4 Navbar uses flexbox, so it's possible to achieve this without extra CSS. You will need an empty spacer div to keep the logo centered.

<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="collapse navbar-collapse w-100 order-1 order-lg-0" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
</div>
<div class="d-flex w-100 order-0">
<div class="w-100">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav">
<span class="navbar-toggler-icon"></span>
</button>
</div>
<a class="navbar-brand text-center w-100" href="#">Navbar</a>
<span class="w-100"></span>
</div>
<span class="w-100"></span>
</nav>

Toggler left, brand center:

https://www.codeply.com/go/VfuMAtIoXi

Related:

How to center nav-items in Bootstrap?

Bootstrap NavBar with left, center or right aligned items

How do I center a Bootstrap nav bar with a brand image inbetween nav links?

To center the floated navbar-nav you can use relative position and negative left, right values on the navbar-nav itself and on the list items or child elements.

To make sure that the logo is always centered you may think about not using a nav-justified but a regular navbar-nav with a fixed value for left and right padding on the anchor tags, but with individual values for different screens.

To get the vertical alignment working just add the appropriate line-height to the anchor tags.

I have decided to hide the actual navbar-brand and only show it on sx breakpoint.
For the centered logo it is the other way around, so we do not have the logo inside the collapsed nav. Just look at the example and i am sure you will get the idea.

Here is the example.

@import url("https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css");
.navbar { background-color: #231f20; min-height: auto; position: relative; top: 0px; font-size: 13px; width: auto; border-bottom: none; margin-bottom: 0px; padding: 40px 0px;}.navbar-brand { padding: 0 15px; height: 96px;}
@media (min-width: 768px) { .navbar-nav { position: relative; right: -50%; } .navbar-nav > li { position: relative; left: -50%; } .navbar-nav > li a { line-height: 126px; vertical-align: middle; padding: 0 24px; } }
@media (min-width: 992px) { .navbar-nav > li a { padding: 0 48px; } }
@media (min-width: 1200px) { .navbar-nav > li a { padding: 0 68px; } }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script><script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<nav class="navbar navbar-default"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand hidden-sm hidden-md hidden-lg" href="#"><img src="http://i.imgur.com/SC9LKtA.png" alt="Brand" width="180" /></a> </div> <div class="collapse navbar-collapse"> <ul class="nav navbar-nav"> <li><a href="#">Who We Are</a></li> <li><a href="#">Our Food</a></li> <li class="hidden-xs"><a href="#"><img src="http://i.imgur.com/SC9LKtA.png" alt="Brand" width="180" /></a></li> <li><a href="#">Book a Table</a></li> <li><a href="#">Promotions</a></li> </ul> </div> </div></nav>


Related Topics



Leave a reply



Submit