css - Center button in Bootstrap navbar (outside collapse) -
i have button in navbar is:
- inline rest of navbar items (i.e. doesn't pushed next line);
- located outside of collapsed navbar section; and
- always positioned in center of page screen resolutions (including when right-side of navbar collapsed).
i having particular problems with:
- centering button; and
- some of navbar items not working smaller screen resolutions (when navbar collapsed).
below code.
alternative css tried:
.navbar-button { position: absolute; left: 0; width: 100%; text-align: center; white-space: nowrap; }
but caused of other navbar links not work. subsequently tried make use of z-index
, didn't seem work.
body { padding-top: 50px; padding-bottom: 20px; } .section { margin-bottom: 30cm; } .navbar-button { display: inline-block; text-align: center; }
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>test</title> <!-- bootstrap core css --> <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> </head> <body> <nav class="navbar navbar-default navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <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" href="#brand">brand</a> <div class="navbar-button"> <button type="button" class="btn btn-primary navbar-btn">button</button> </div> </div> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <ul class="nav navbar-nav navbar-right"> <li class="text-center"> <a href="#link1">link-1</a> </li> <li class="text-center"> <a href="#link2">link-2</a> </li> <li class="text-center"> <a href="#link3">link-3</a> </li> </ul> </div> </div> </nav> <div class="container"> <div class="row"> <div class="section" id="brand"> <h3>top</h3> </div> </div> <div class="row"> <div class="section" id="link1"> <h3>section-1</h3> </div> </div> <div class="row"> <div class="section" id="link2"> <h3>section-2</h3> </div> </div> <div class="row"> <div class="section" id="link3"> <h3>section-3</h3> </div> </div> </div> </body> </html>
you can use position : absolute don't apply 100% width it's covering links/toggle button. can apply .navbar-btn directly button inside of outer div.
example css:
.button-center { position: absolute; left: 50%; transform: translatex(-50%); }
working example:
body { padding-top: 50px; padding-bottom: 20px; } .section { margin-bottom: 30cm; } .button-center { position: absolute; left: 50%; transform: translatex(-50%); }
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" /> <nav class="navbar navbar-default navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <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" href="https://www.github.com" target="_blank">brand</a> <button type="button" class="btn btn-primary navbar-btn button-center">button</button> </div> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <ul class="nav navbar-nav navbar-right"> <li class="text-center"> <a href="https://www.github.com" target="_blank">test link</a> </li> <li class="text-center"> <a href="#link2">link-2</a> </li> <li class="text-center"> <a href="#link3">link-3</a> </li> </ul> </div> </div> </nav> <div class="container"> <div class="row"> <div class="section" id="brand"> <h3>top</h3> </div> </div> <div class="row"> <div class="section" id="link1"> <h3>section-1</h3> </div> </div> <div class="row"> <div class="section" id="link2"> <h3>section-2</h3> </div> </div> <div class="row"> <div class="section" id="link3"> <h3>section-3</h3> </div> </div> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
Comments
Post a Comment