jjones150
jjones150

Reputation: 302

Hamburger for Mobile Devices

enter image description hereI have been searching for a solution to my particular problem without much success. I am attempting to code a website in bootstrap 3. I have used an inverse navbar which renders as desired on a desktop/laptop computer.

There are menu items to the left as well as two items to the left (register and login). The registration directs to a registration page, the login results in a dropdown login box.

However, I would like for the menu to render as a hamburger on mobile devices, only showing menu-items when it the hamburger is tapped.On this menu the registration and login links can be below the rest of the menu links.

The code I starting with is below and I have included a screen shot. Any assistance is greatly apreciated.

<div class="content row">
  <div class="container">


<header class="clearfix">
    <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>

<div class="navbar navbar-inverse navbar-fixed-top">
        <ul class="nav navbar-nav">             
            <li><a href="index.php">Home</a></li>
            <li><a href="">About Us</a></li>
            <li><a href="contact.php">Contact Us</a></li>
            <li><a href="signup.php">Sign Up</a></li>
        </ul><!-- nav navbar-nav -->    
             <div class="nav-collapse collapse">
                    <ul class="nav pull-right">
                        <li><a href="register.php">Register</a></li>
                        <li class="divider-vertical"></li>
                        <li class="dropdown"><a class="dropdown-toggle" href="#" data-toggle="dropdown">Log In <strong class="caret"></strong></a>
                            <div class="dropdown-menu pull-right" style="padding: 15px; padding-bottom: 10px;">
                                <form action="login.php" method="post"> 
                                Username:<br /><input type="text" name="username" value="<?php echo $submitted_username; ?>" /> 
                                <br /><br /> 
                                Password:<br /><input type="password" name="password" value="" /> 
                                <br /><br /> 
                                <input type="submit" class="btn btn-info" value="Login" /> 
                                </form> 

                            </div><!--drop dwon menu nav -->

                        </li>
                    </ul>
            </div><!--nav-collapse collapse-->

</div><!-- navbar navbar-inverse navbar-fixed-top-->


</header><!-- header -->


  </div><!--container-->
</div><!--content row -->

Upvotes: 1

Views: 160

Answers (1)

potatopeelings
potatopeelings

Reputation: 41075

You need to adjust your classes / element hierarchy a bit

<nav class="navbar navbar-inverse navbar-fixed-top">
    <div class="container-fluid">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" 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>
        </div>

        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav">
                <li><a href="index.php">Home</a></li>
                <li><a href="">About Us</a></li>
                <li><a href="contact.php">Contact Us</a></li>
                <li><a href="signup.php">Sign Up</a></li>
            </ul><!-- nav navbar-nav -->
            <ul class="nav navbar-nav navbar-right">
                <li><a href="register.php">Register</a></li>
                <li class="divider-vertical"></li>
                <li class="dropdown">
                    <a class="dropdown-toggle" href="#" data-toggle="dropdown">Log In <strong class="caret"></strong></a>
                    <div class="dropdown-menu pull-right" style="padding: 15px; padding-bottom: 10px;">
                        <form action="login.php" method="post">
                            Username:<br /><input type="text" name="username" value="<?php echo $submitted_username; ?>" />
                            <br /><br />
                            Password:<br /><input type="password" name="password" value="" />
                            <br /><br />
                            <input type="submit" class="btn btn-info" value="Login" />
                        </form>
                    </div>
                </li>
            </ul>
        </div>
    </div><!--container-fluid-->
</nav>

Fiddle - http://www.bootply.com/render/sdyDKCyOnA

Upvotes: 1

Related Questions