简体   繁体   中英

How to display logo in center at boostrap for mobile device?

I am trying to develop a website using twitter bootstrap. I use a image as logo in navbar using this code

 <div class="navbar navbar-default navbar-static-top" role="navigation">

    <div class="navbar-header">

     <a class="navbar-brand" href="#"><img class="img-responsive" src="images/bradley.png" alt="" /></a>
    </div>

    <div>
       <ul class="nav navbar-nav">
          <li class="home current-page"><a href="index.html">Swap</a></li>
          <li class="episodes"><a href="tales.html">Tales</a></li>
             <li class="about"><a href="about.html">About</a></li>
            <li class="contact"><a href="contact.html">Contact</a></li>
       </ul>

    </div><!--/.nav-collapse -->

  </div>

It is ok for laptop. But for mobile device and tab i want that logo will be center. Please tell me How can i do that? This is my site https://dl.dropboxusercontent.com/u/168659703/project/index.html

.navbar-header {
   margin: 0 auto;
   display: table;
   /* margin-right: 50px; */ remove this or add margin-right: auto !important;
}

http://jsfiddle.net/L64Pa/

Here's an update for Bootstrap 4 since the original accepted answer is now a broken fiddle.

The flexbox utils that are now included in Bootstrap 4 can be used to responsively change the alignment of content. For example, here the brand is centered on mobile:

<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
    <div class="d-flex flex-grow-1">
        <span class="w-100 d-lg-none d-block"><!-- hidden spacer to center brand on mobile --></span>
        <a class="navbar-brand mx-0" href="#">
            Brand
        </a>
        <div class="w-100 text-right">
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#myNavbar">
                <span class="navbar-toggler-icon"></span>
            </button>
        </div>
    </div>
    <div class="collapse navbar-collapse flex-grow-1 text-right" id="myNavbar">
        <ul class="navbar-nav ml-auto flex-nowrap">
            <li class="nav-item">
                <a href="#" class="nav-link">Link</a>
            </li>
            <li class="nav-item">
                <a href="#" class="nav-link">Link</a>
            </li>
            <li class="nav-item">
                <a href="#" class="nav-link">Link</a>
            </li>
            <li class="nav-item">
                <a href="#" class="nav-link">Link</a>
            </li>
        </ul>
    </div>
</nav>

Demo: https://codeply.com/go/DPyf5WFg99

.navbar-header
{
  display:block;
  text-align:center;
}

You could do a semi "hack" style CSS in your main.css file with:

@media only screen and (max-device-width: 480px) {
    .navbar-brand {
        float:none !important;
    }
    .img-responsive {
        margin:0 auto !important;
        display:block !important;
    }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM