<nav class="navbar">
  <ul class="nav">
    <li>
      Home
      <ul class="dropdown">
        <li>Menu 1</li>
        <li>Menu 2</li>
        <li>Menu 3</li>
        <li>Menu 4</li>
        <li>Menu 5</li>
        <li>Menu 6</li>
      </ul>
    </li>
    <li>
      About
      <ul class="dropdown">
        <li>Menu 1</li>
        <li>Menu 2</li>
        <li>Menu 3</li>
        <li>Menu 4</li>
        <li>Menu 5</li>
        <li>Menu 6</li>
        <li>Menu 7</li>
        <li>Menu 8</li>
        <li>Menu 9</li>
      </ul>     
    </li>
    <li>
      Pricing
      <ul class="dropdown">
        <li>Menu 1</li>
        <li>Menu 2</li>
        <li>Menu 3</li>
      </ul>     
    </li>
    <li>
      Docs
      <ul class="dropdown">
        <li>Menu 1</li>
        <li>Menu 2</li>
      </ul>     
    </li>
    <li>
      Contact
      <ul class="dropdown">
        <li>Menu 1</li>
        <li>Menu 2</li>
        <li>Menu 3</li>
        <li>Menu 4</li>
        <li>Menu 5</li>
      </ul>         
    </li>
  </ul>
</nav>  
// Variables ==========================
$primary: #907dda
$accent: #e5e4ea
$font-light: #e7e6f1
$font-dark: #333

// Base ===============================
html
  height: 100%

body
  display: flex
  flex:
    direction: column
  height: 100%
  background: #F3F4F8

ul.nav
  display: flex
  position: relative
  flex:
    direction: row
  align-items: center
  max-width: 70%
  margin: 0 auto
  padding: 0
  list-style: none
  background: $primary
  border-top-left-radius: 6px
  border-top-right-radius: 6px

  > li
    position: relative
    flex:
      grow: 1
      shrink: 0
    height: 60px
    font:
      size: 14px
    text:
      align: center
      transform: uppercase
    line-height: 60px
    letter-spacing: 1px
    color: $font-light
    cursor: pointer
  
    // CSS States ===============================
    &:hover
      background: rgba(0,0,0,0.1)
  
      ul.dropdown
        visibility: visible
        transform: translate(0,0)
        opacity: 1
        z-index: 0
    
        > li
          animation: 
            name: slideInLeft
            duration: 0.3s
            timing-function: ease-in-out
            fill-mode: backwards
      
    // nth-child ==============================
    &:first-child
      border-top-left-radius: 6px
  
    &:last-child
      border-top-right-radius: 6px        
  
ul.dropdown
  visibility: hidden
  display: flex
  position: absolute
  top: 100%
  left: 0
  right: 0
  flex-direction: column
  margin: 0
  padding: 5px 0 30px
  list-style: none
  color: $font-dark
  background: $accent
  border-bottom-left-radius: 6px
  border-bottom-right-radius: 6px
  box-shadow: 1px 2px 5px -1px rgba(0,0,0,0.15),0px 4px 14px -1px rgba(0,0,0,0.10)
  transform: translate(0,-60px)
  transition: transform 0.2s ease-out, opacity 0.2s, z-index 0s 0.2s
  opacity: 0
  z-index: -1

  > li
    font:
      size: 14px
    cursor: pointer
  
    // CSS State ===========================
    &:hover
      background: rgba(0,0,0,0.06)
  
@keyframes slideInLeft
  from
    transform: translate(-25%,0)
    opacity: 0
  
  to
    transform: translate(0,0)
    opacity: 1
    

  
View Compiled
$( document ).ready(function() {
  
  // Loop through each nav item
  $('nav.navbar').children('ul.nav').children('li').each(function(indexCount){
    
    // loop through each dropdown, count children and apply a animation delay based on their index value
    $(this).children('ul.dropdown').children('li').each(function(index){
      
      // Turn the index value into a reasonable animation delay
      var delay = 0.1 + index*0.03;
      
      // Apply the animation delay
      $(this).css("animation-delay", delay + "s")     
    });
  });
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://code.jquery.com/jquery-2.2.4.min.js
  2. https://codepen.io/CodeBoomer/pen/qaOWJE.js