Full width css dropdown menu

前端 未结 1 615
天涯浪人
天涯浪人 2020-12-10 06:08

I am trying to create pure and simple CSS drop down menu which will open in a full width mode underneath each item but will also keep each drop down menu underneath it\'s pa

相关标签:
1条回答
  • 2020-12-10 07:00

    /* not very relevant styling */
    h1         { font-size: 20px; padding-top: 20px; }
    .container { position: relative; margin: 20px auto 0 auto; width: 75%; }
    .header    { background: #eee; }
    .nav       { background: #ccc; }
    
    /* relevant styling */
    body { overflow-x: hidden; } /* trick from css-tricks comments */
    
    /* FIRST LEVEL */
    
    .nav > ul > li { 
      display: inline-block; 
      position: relative; 
      padding: 3px 10px 3px 0;
      z-index: 100;
    }
    
    /* SECOND LEVEL */
    .nav > ul > li > ul {
      position: absolute;
      left: 0;
      top: 100%;
      padding: 0 1000em; /* trick from css-tricks comments */
      margin: 0 -1000em; /* trick from css-tricks comments */
      z-index: 101;
      visibility: hidden;
      opacity: 0;
      background: rgba(255, 240, 240, 0.8);
    }
    
    .nav > ul > li:hover > ul {
      visibility: visible;
      opacity: 1;
    }
    
    .nav > ul > li > ul > li {
      padding: 3px 0;
    }
    
    .nav > ul > li:hover .drop {
      font-weight: bold;
    }
    <div class="header">
    
      <div class="container">
        <h1>Hank's Big Leauge Widgets</h1>
        <span>You want a widget? we got 'em!</span>
      </div>
    
    
      <!-- NAVIGATION -->    
      <div class="nav">
        <ul class="container">
          <li>
            <a class="drop" href="#">Products</a>
            <ul>
              <li><a href="#">Widget A</a></li>
              <li><a href="#">Widget B</a></li>
              <li><a href="#">Widget C</a></li>
            </ul>
          </li>
          <li>
            <a class="drop" href="#">Locations</a>
            <ul>
              <li><a href="#">Location A</a></li>
              <li><a href="#">Location B</a></li>
              <li><a href="#">Location C</a></li>
            </ul>
          </li>
          <li>
            <a class="drop" href="#">Staff</a>
            <ul>
              <li><a href="#">President</a></li>
              <li><a href="#">VP</a></li>
              <li><a href="#">Manager</a></li>
            </ul>
          </li>
        </ul>
      </div>
    </div>
    
    <div class="content container">
      <p>All sorts of content</p>
      <p>All sorts of content</p>
      <p>All sorts of content</p>
      <p>All sorts of content</p>
      <p>All sorts of content</p>
      <p>All sorts of content</p>
    </div>
    
    
    **CSS and HTML**

    Demo

    JSFIDDLE

    0 讨论(0)
提交回复
热议问题