move collapsed navbar to other div on mobile phone

Viewed 448

I have a div in which I am placing my logo. Below this div I placed my navbar. On mobile phones i.e on smaller screens, I am collapsing my navbar but I want my collapsed navbar to be placed beside my logo image.

I want my collapsed navbar to move to the logo div. should look like this on mobile phones

How can i do this?

        <div class="container-fluid bg-light">
            <div class="row"><img src="logo.jpg" class="float-left ml-3 img-responsive" width="250" height="150" /></div>
        </div>
        <nav class="navbar navbar-expand-md navbar-light bg-primary container-fluid">

            
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar5">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div class="navbar-collapse collapse" id="navbar5">
                <ul class="navbar-nav ">
                    <li class="nav-item px-3 active">
                        <a class="nav-link" href="#">Menu1 <span class="sr-only">Menu1</span></a>
                    </li>
                    <li class="nav-item px-3">
                        <a class="nav-link" href="#">Menu2</a>
                    </li>
                    <!-- Dropdown -->
                    <li class="nav-item px-3 dropdown">
                        <a class="nav-link dropdown-toggle" href="#" id="navbardrop" data-toggle="dropdown">
                            Menu3
                        </a>
                        <div class="dropdown-menu">
                            <a class="dropdown-item" href="#">Menu4</a>
                            <a class="dropdown-item" href="#">Menu5</a>
                        </div>
                    </li>
                    <li class="nav-item px-3">
                        <a class="nav-link" href="#">Menu6</a>
                    </li>
                    <li class="nav-item px-3">
                        <a class="nav-link" href="#">Menu7</a>
                    </li>
                    <li class="nav-item px-3">
                        <a class="nav-link" href="#">Menu8</a>
                    </li>
                    <li class="nav-item px-3">
                        
                    </li>
                </ul>

            </div>

        </nav>

I am doing this in bootstrap 4

2 Answers

You can wrap the logo and navbar in the grid columns. Make the first column shrink to fit (col-auto) once the Navbar is collapsed, and col for the Navbar column. Otherwise, both columns will be full width (col-md-12) on md and wider...

<div class="container-fluid bg-light px-0">
    <div class="row no-gutters align-items-center">
        <div class="col-md-12 col-auto">
            <img src="//placehold.it/250x150" class="float-left ml-3 img-fluid" width="250" height="150">
        </div>
        <div class="col-md-12 col">
            <nav class="navbar navbar-expand-md navbar-light bg-primary container-fluid">
                <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar5">
                    <span class="navbar-toggler-icon"></span>
                </button>
                <div class="navbar-collapse collapse" id="navbar5">
                    <ul class="navbar-nav ">
                        ...
                    </ul>
                </div>
            </nav>
        </div>
    </div>
</div>

P.S. - The Bootstrap 4 row is only meant to contain col*, so the logo img shouldn't be placed directly in the row.

https://www.codeply.com/go/SPF8i0CmmK

EDIT

It sounds like you're looking for this: https://www.codeply.com/go/nvhXPgkdPV

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <a class="navbar-brand" href="#">
     <img style="width: 80px" 
   src="http://pngimg.com/uploads/intel/intel_PNG25.png" alt=""></a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data- 
  target="#navbarSupportedContent" aria-controls="navbarSupportedContent" 
  aria-expanded="false" aria-label="Toggle navigation">
   <span class="navbar-toggler-icon"></span>
   </button>

   <div class="collapse navbar-collapse" id="navbarSupportedContent">
    <ul class="navbar-nav mr-auto">
     <li class="nav-item active">
       <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
      Dropdown
    </a>
    <div class="dropdown-menu" aria-labelledby="navbarDropdown">
      <a class="dropdown-item" href="#">Action</a>
      <a class="dropdown-item" href="#">Another action</a>
      <div class="dropdown-divider"></div>
      <a class="dropdown-item" href="#">Something else here</a>
    </div>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled" href="#">Disabled</a>
    </li>
  </ul>
    <form class="form-inline my-2 my-lg-0">
     <input class="form-control mr-sm-2" type="search" placeholder="Search" 
      aria-label="Search">
  <button class="btn btn-outline-success my-2 my-sm-0" 
  type="submit">Search</button>
   </form>
   </div>
  </nav>
Related