0

I have TOP nav bar with some menus and Side nav bar with some menus. I given styling for the vertical nav bar , but it reflects to all the nav bar and gives me output like given in pictureenter image description here

Can anyone suggest me how to seperate the styling for the vertical menu.Vertical menus styling starts from @media

.top-color {
  background-color: aquamarine;
  margin-bottom: 0;
}
.firstmenu {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .navbar-collapse {
    height: auto;
    border-top: 0;
    box-shadow: none;
    max-height: none;
    padding-left: 0;
    padding-right: 0;
  }
  .navbar-collapse.collapse {
    display: block !important;
    width: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-x: visible;
  }
  .navbar {
    max-width: 300px;
    margin-right: 0;
    margin-left: 0;
  }
  .navbar-nav,
  .navbar-nav > li,
  .navbar-left,
  .navbar-right,
  .navbar-header {
    float: none !important;
  }
  .navbar-right .dropdown-menu {
    left: 0;
    right: auto;
  }
  .navbar-collapse .navbar-nav.navbar-right:last-child {
    margin-right: 0;
  }
}
<title>Bootstrap Case</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
</head>

<body>

  <nav class="navbar top-color">
    <!--nav header Div-->
    <div class="container-fluid">
      <div class="col-sm-1"><a class="navbar-head" style="text-decoration:none; color:white;" href="#"><h1>My Page</h1></a>
      </div>


    </div>


  </nav>

  <nav class="navbar navbar-inverse firstmenu">
    <div class="container-fluid">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span> 
        </button>
        <a class="navbar-brand" href="#">WebSiteName</a>
      </div>
      <div class="collapse navbar-collapse" id="myNavbar">
        <ul class="nav navbar-nav">
          <li class="active"><a href="#">Home</a>
          </li>
          <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#">Page 1 <span class="caret"></span></a>

          </li>
          <li><a href="#">Page 2</a>
          </li>
          <li><a href="#">Page 3</a>
          </li>
        </ul>

      </div>
    </div>
  </nav>

</body>

</html>

<nav class="navbar navbar-default" role="navigation">
  <!-- Brand and toggle get grouped for better mobile display -->
  <div class="navbar-header">
    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-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" href="#">Brand</a>
  </div>

  <!-- Collect the nav links, forms, and other content for toggling -->
  <div class="collapse navbar-collapse navbar-ex1-collapse">
    <ul class="nav navbar-nav">
      <li class="active"><a href="#">Link</a>
      </li>
      <li><a href="#">Link</a>
      </li>
      <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></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><a href="#">Separated link</a>
          </li>
          <li><a href="#">One more separated link</a>
          </li>
        </ul>
      </li>
    </ul>
    <form class="navbar-form navbar-left" role="search">
      <div class="form-group">
        <input type="text" class="form-control" placeholder="Search">
      </div>
      <button type="submit" class="btn btn-default">Submit</button>
    </form>
    <ul class="nav navbar-nav navbar-right">
      <li><a href="#">Link</a>
      </li>
      <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></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><a href="#">Separated link</a>
          </li>
        </ul>
      </li>
    </ul>
  </div>
  <!-- /.navbar-collapse -->
</nav>
Ani Menon
  • 27,209
  • 16
  • 105
  • 126
  • when there are 2 elements with same class name then we either style them using a unique parent class before these classes or add another unique class or id and style them with those – Dhaval Chheda Apr 29 '16 at 10:14
  • actually I named it as verticalmenu and tried styling , but no luck. – Priyoshika Ram Apr 29 '16 at 10:19
  • you already have 2 different classes in the navs which are navbar-inverse and navbar-default..so before writing any CSS rules which uses common classes use these in the front like .navbar-default .navbar-nav>li>a – Dhaval Chheda Apr 29 '16 at 10:30

1 Answers1

0

.top-color {
      background-color: aquamarine;
      margin-bottom: 0;
    }
    .firstmenu {
      margin-bottom: 0;
    }
.navbar-default .navbar-toggle {
  display: none ;
}
.navbar.navbar-default {
  float: left;
  width: 50%;
}
.navbar-default .collapse.navbar-collapse.navbar-ex1-collapse {
  display: block;
  float: left;
  width: 100%;
}
@media (min-width: 768px) {
      .navbar-collapse {
        height: auto;
        border-top: 0;
        box-shadow: none;
        max-height: none;
        padding-left: 0;
        padding-right: 0;
      }
      .navbar-collapse.collapse {
        display: block !important;
        width: auto !important;
        padding-bottom: 0;
        overflow: visible !important;
      }
      .navbar-collapse.in {
        overflow-x: visible;
      }
      .navbar {
        max-width: 300px;
        margin-right: 0;
        margin-left: 0;
      }
      .navbar-nav,
      .navbar-nav > li,
      .navbar-left,
      .navbar-right,
      .navbar-header {
        float: none !important;
      }
      .navbar-right .dropdown-menu {
        left: 0;
        right: auto;
      }
      .navbar-collapse .navbar-nav.navbar-right:last-child {
        margin-right: 0;
      }
    }

   
<title>Bootstrap Case</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

<nav class="navbar top-color">
    <!--nav header Div-->
    <div class="container-fluid">
      <div class="col-sm-1"><a class="navbar-head" style="text-decoration:none; color:white;" href="#"><h1>My Page</h1></a>
      </div>


    </div>


  </nav>

  <nav class="navbar navbar-inverse firstmenu">
    <div class="container-fluid">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span> 
        </button>
        <a class="navbar-brand" href="#">WebSiteName</a>
      </div>
      <div class="collapse navbar-collapse" id="myNavbar">
        <ul class="nav navbar-nav">
          <li class="active"><a href="#">Home</a>
          </li>
          <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#">Page 1 <span class="caret"></span></a>

          </li>
          <li><a href="#">Page 2</a>
          </li>
          <li><a href="#">Page 3</a>
          </li>
        </ul>

      </div>
    </div>
  </nav>

</body>

</html>

<nav class="navbar navbar-default" role="navigation">
  <!-- Brand and toggle get grouped for better mobile display -->
  <div class="navbar-header">
    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-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" href="#">Brand</a>
  </div>

  <!-- Collect the nav links, forms, and other content for toggling -->
  <div class="collapse navbar-collapse navbar-ex1-collapse">
    <ul class="nav navbar-nav">
      <li class="active"><a href="#">Link</a>
      </li>
      <li><a href="#">Link</a>
      </li>
      <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></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><a href="#">Separated link</a>
          </li>
          <li><a href="#">One more separated link</a>
          </li>
        </ul>
      </li>
    </ul>
    <form class="navbar-form navbar-left" role="search">
      <div class="form-group">
        <input type="text" class="form-control" placeholder="Search">
      </div>
      <button type="submit" class="btn btn-default">Submit</button>
    </form>
    <ul class="nav navbar-nav navbar-right">
  

    <li><a href="#">Link</a>
      </li>
      <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></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><a href="#">Separated link</a>
          </li>
        </ul>
      </li>
    </ul>
  </div>
  <!-- /.navbar-collapse -->
</nav>

You can try this css:

.navbar-default .navbar-toggle {
  display: none ;
}
.navbar.navbar-default {
  float: left;
  width: 50%;
}
.navbar-default .collapse.navbar-collapse.navbar-ex1-collapse {
  display: block;
  float: left;
  width: 100%;
}
Jainam
  • 2,590
  • 1
  • 9
  • 18