RobotMan
RobotMan

Reputation: 3

Bootstrap getting navbar to the right side

Hi guys so i got my background image ready and sorted on my site, i have my logo on the left side and i am trying to get my navbar on the same line as the logo but on the ride side of the screen ,

Example of a site: Site

So far i have :

HTML:

<div class="parallax">
    <div class ="logo">
        <img src="Images/logo1.fw.png">
    </div> 

 <nav class="navbar navbar-default">
    <div class="container-fluid">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
          <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 id="navbar" class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li><a href="#">About</a></li>
          <li><a href="#">About</a></li>
          <li><a href="#">Contact</a></li>
          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
            <ul class="dropdown-menu">
              <li><a href="#">Action</a></li>
              <li><a href="#">Another action</a></li>
              <li><a href="#">Something else here</a></li>
              <li role="separator" class="divider"></li>
              <li class="dropdown-header">Nav header</li>
              <li><a href="#">Separated link</a></li>
              <li><a href="#">One more separated link</a></li>
            </ul>
          </li>
        </ul>
      </div><!--/.nav-collapse -->
    </div><!--/.container-fluid -->
  </nav>
</div>

CSS:

   .parallax {
        background-image: url("../Images/back1.jpg");
        min-height: 1000px;
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        width: 100%;
    }

    .parallax1 {
        min-height: 1000px;
    }

    .logo {
        padding-top: 20px;
        padding-left: 40px;
    }

    .navbar-default {
        background-color: transparent;
        border-top: 0px solid rgba(0, 0, 0, 0.5);
        border-bottom: 0px solid rgba(0, 0, 0, 0.5);
        border-left: 0px solid rgba(0, 0, 0, 0.5);
        border-right: 0px solid rgba(0, 0, 0, 0.5);
    }

    .navbar-default .navbar-nav>li>a {
        color: #ffffff;
    }

Upvotes: 0

Views: 1572

Answers (2)

Michael Coker
Michael Coker

Reputation: 53674

Using bootstrap 4, you should utilize the helper classes. You can make the element display: flex; justify-content: space-between with .d-flex and .justify-content-between. If you want to vertically center them, you can use .align-items-center

<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" rel="stylesheet"/>
<style>
body {
  background: black;
}

.parallax {
  background-image: url("../Images/back1.jpg");
  min-height: 1000px;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
}

.parallax1 {
  min-height: 1000px;
}

.logo {
  padding-top: 20px;
  padding-left: 40px;
}

.navbar-default {
  background-color: transparent;
  border-top: 0px solid rgba(0, 0, 0, 0.5);
  border-bottom: 0px solid rgba(0, 0, 0, 0.5);
  border-left: 0px solid rgba(0, 0, 0, 0.5);
  border-right: 0px solid rgba(0, 0, 0, 0.5);
}

.navbar-default .navbar-nav > li > a {
  color: #ffffff;
}
</style>
<div class="parallax">
  <header class="d-flex justify-content-between align-items-center">
  <div class="logo">
    <img src="Images/logo1.fw.png">
  </div>

  <nav class="navbar navbar-default">
    <div class="container-fluid">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
          <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 id="navbar" class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li><a href="#">About</a></li>
          <li><a href="#">About</a></li>
          <li><a href="#">Contact</a></li>
          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
            <ul class="dropdown-menu">
              <li><a href="#">Action</a></li>
              <li><a href="#">Another action</a></li>
              <li><a href="#">Something else here</a></li>
              <li role="separator" class="divider"></li>
              <li class="dropdown-header">Nav header</li>
              <li><a href="#">Separated link</a></li>
              <li><a href="#">One more separated link</a></li>
            </ul>
          </li>
        </ul>
      </div>
      <!--/.nav-collapse -->
    </div>
    <!--/.container-fluid -->
  </nav>
  </header>
</div>

Or if you're on bootstrap 3, use the .pull-left and .pull-right classes to float the logo left and nav right.

<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<style>
  body {
    background: black;
  }
  
  .parallax {
    background-image: url("../Images/back1.jpg");
    min-height: 1000px;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
  }
  
  .parallax1 {
    min-height: 1000px;
  }
  
  .logo {
    padding-top: 20px;
    padding-left: 40px;
  }
  
  .navbar-default {
    background-color: transparent;
    border-top: 0px solid rgba(0, 0, 0, 0.5);
    border-bottom: 0px solid rgba(0, 0, 0, 0.5);
    border-left: 0px solid rgba(0, 0, 0, 0.5);
    border-right: 0px solid rgba(0, 0, 0, 0.5);
  }
  
  .navbar-default .navbar-nav > li > a {
    color: #ffffff;
  }
</style>
<div class="container-fluid">
  <div class="row">
    <div class="parallax">
      <div class="logo pull-left">
        <img src="Images/logo1.fw.png">
      </div>

      <nav class="navbar navbar-default pull-right">
        <div class="container-fluid">
          <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
          <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 id="navbar" class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
              <li><a href="#">About</a></li>
              <li><a href="#">About</a></li>
              <li><a href="#">Contact</a></li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
                <ul class="dropdown-menu">
                  <li><a href="#">Action</a></li>
                  <li><a href="#">Another action</a></li>
                  <li><a href="#">Something else here</a></li>
                  <li role="separator" class="divider"></li>
                  <li class="dropdown-header">Nav header</li>
                  <li><a href="#">Separated link</a></li>
                  <li><a href="#">One more separated link</a></li>
                </ul>
              </li>
            </ul>
          </div>
          <!--/.nav-collapse -->
        </div>
        <!--/.container-fluid -->
      </nav>
    </div>
  </div>
</div>

Upvotes: 0

Obsidian Age
Obsidian Age

Reputation: 42304

I think what you're looking for is to float the navbar next to the logo:

.logo {
  float: left;
}

.navbar {
  float: right;
}

I've created a JSFiddle demonstrating this here, replacing your relative images with some placeholders.

Hope this helps! :)

Upvotes: 1

Related Questions