Advertisement
Crysys

Untitled

May 31st, 2023 (edited)
969
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CSS 3.12 KB | Source Code | 0 0
  1. #menu {
  2.   background: #343434;
  3.   color: #eee;
  4.   height: 35px;
  5.   border-bottom: 4px solid #eeeded
  6. }
  7.  
  8. #menu ul,
  9. #menu li {
  10.   margin: 0 0;
  11.   padding: 0 0;
  12.   list-style: none
  13. }
  14.  
  15. #menu ul {
  16.   height: 35px
  17. }
  18.  
  19. #menu li {
  20.   float: left;
  21.   display: inline;
  22.   position: relative;
  23.   font: bold 12px Arial;
  24.   text-shadow: 0 -1px 0 #000;
  25.   border-right: 1px solid #444;
  26.   border-left: 1px solid #111;
  27.   text-transform: uppercase
  28. }
  29.  
  30. #menu li:first-child {
  31.   border-left: none
  32. }
  33.  
  34. #menu a {
  35.   display: block;
  36.   line-height: 35px;
  37.   padding: 0 14px;
  38.   text-decoration: none;
  39.   color: #eee;
  40. }
  41.  
  42. #menu li:hover > a,
  43. #menu li a:hover {
  44.   background: #111
  45. }
  46.  
  47. #menu input {
  48.   display: none;
  49.   margin: 0 0;
  50.   padding: 0 0;
  51.   width: 80px;
  52.   height: 35px;
  53.   opacity: 0;
  54.   cursor: pointer
  55. }
  56.  
  57. #menu label {
  58.   font: bold 30px Arial;
  59.   display: none;
  60.   width: 35px;
  61.   height: 36px;
  62.   line-height: 36px;
  63.   text-align: center
  64. }
  65.  
  66. #menu label span {
  67.   font-size: 12px;
  68.   position: absolute;
  69.   left: 35px
  70. }
  71.  
  72. #menu ul.menus {
  73.   height: auto;
  74.   width: 180px;
  75.   background: #111;
  76.   position: absolute;
  77.   z-index: 99;
  78.   display: none;
  79.   border: 0;
  80. }
  81.  
  82. #menu ul.menus li {
  83.   display: block;
  84.   width: 100%;
  85.   font: 12px Arial;
  86.   text-transform: none;
  87. }
  88.  
  89. #menu li:hover ul.menus {
  90.   display: block
  91. }
  92.  
  93. #menu a.home {
  94.   background: #c00;
  95. }
  96.  
  97. #menu a.prett {
  98.   padding: 0 27px 0 14px
  99. }
  100.  
  101. #menu a.prett::after {
  102.   content: "";
  103.   width: 0;
  104.   height: 0;
  105.   border-width: 6px 5px;
  106.   border-style: solid;
  107.   border-color: #eee transparent transparent transparent;
  108.   position: absolute;
  109.   top: 15px;
  110.   right: 9px
  111. }
  112.  
  113. #menu a.prett.open::after {
  114.   content: "";
  115.   width: 0;
  116.   height: 0;
  117.   border-width: 6px 5px;
  118.   border-style: solid;
  119.   border-color: transparent transparent #eee transparent;
  120.   position: absolute;
  121.   top: 9px;
  122.   right: 9px
  123. }
  124.  
  125. #menu ul.menus a:hover {
  126.   background: #333;
  127. }
  128.  
  129. #menu ul.menus .submenu {
  130.   display: none;
  131.   position: absolute;
  132.   left: 180px;
  133.   background: #111;
  134.   top: 0;
  135.   width: 180px;
  136. }
  137.  
  138. #menu ul.menus .submenu li {
  139.   background: #111;
  140. }
  141.  
  142. #menu ul.menus .has-submenu a.open ~ .submenu {
  143.   display: block;
  144. }
  145.  
  146. <nav>
  147.   <ul id='menu'>
  148.     <li><a class='home' href='/'>Home</a></li>
  149.     <li><a class='prett' href='#' title='Menu'>Menu</a>
  150.       <ul class='menus'>
  151.         <li class='has-submenu'><a class='prett' title='Dropdown 1'>Dropdown 1 + Sub Menu</a>
  152.           <ul class='submenu'>
  153.             <li><a href="#" title="Sub Menu">Sub Menu</a></li>
  154.             <li><a href="#" title="Sub Menu">Sub Menu 2</a></li>
  155.             <li><a href="#" title="Sub Menu">Sub Menu 3</a></li>
  156.           </ul>
  157.         </li>
  158.         <li><a href='#' title='Dropdown 2'>Dropdown 2</a></li>
  159.         <li><a href='#' title='Dropdown 3'>Dropdown 3</a></li>
  160.       </ul>
  161.     </li>
  162.   </ul>
  163. </nav>
  164.  
  165. document.addEventListener('click', function(e) {
  166.   e = e || window.event;
  167.   console.log(e);
  168.   var target = e.target || e.srcElement;
  169.   console.log(target);
  170.   if (target.parentElement.className.indexOf('has-submenu') > -1) {
  171.     e.target.classList.toggle('open');
  172.   }
  173. }, false);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement