Advertisement
deyanivanov966

Landing Page Task 101 menu

Nov 10th, 2021
1,151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CSS 2.61 KB | None | 0 0
  1. .menu-wrap {
  2.   position: fixed;
  3.   top: 0;
  4.   right: 0;
  5.   z-index: 1;
  6. }
  7.  
  8. .menu-wrap .toggler {
  9.   position: absolute;
  10.   top: 0;
  11.   right: 0;
  12.   z-index: 2;
  13.   cursor: pointer;
  14.   width: 50px;
  15.   height: 50px;
  16.   opacity: 0;
  17. }
  18.  
  19. .menu-wrap .hamburger {
  20.   position: absolute;
  21.   top: 0;
  22.   right: 0;
  23.   z-index: 1;
  24.   width: 60px;
  25.   height: 60px;
  26.   padding: 1rem;
  27.   background: var(--primary-color);
  28.   display: flex;
  29.   align-items: center;
  30.   justify-content: center;
  31. }
  32.  
  33. /* Hamburger Line */
  34. .menu-wrap .hamburger > div {
  35.   position: relative;
  36.   flex: none;
  37.   width: 100%;
  38.   height: 2px;
  39.   background: #fff;
  40.   display: flex;
  41.   align-items: center;
  42.   justify-content: center;
  43.   transition: all 0.4s ease;
  44. }
  45.  
  46. /* Hamburger Lines - Top & Bottom */
  47. .menu-wrap .hamburger > div::before,
  48. .menu-wrap .hamburger > div::after {
  49.   content: "";
  50.   position: absolute;
  51.   z-index: 1;
  52.   top: -10px;
  53.   width: 100%;
  54.   height: 2px;
  55.   background: inherit;
  56. }
  57.  
  58. /* Moves Line Down */
  59. .menu-wrap .hamburger > div::after {
  60.   top: 10px;
  61. }
  62.  
  63. /* Toggler Animation */
  64. .menu-wrap .toggler:checked + .hamburger > div {
  65.   transform: rotate(135deg);
  66. }
  67.  
  68. /* Turns Lines Into X */
  69. .menu-wrap .toggler:checked + .hamburger > div:before,
  70. .menu-wrap .toggler:checked + .hamburger > div:after {
  71.   top: 0;
  72.   transform: rotate(90deg);
  73. }
  74.  
  75. /* Rotate On Hover When Checked */
  76. .menu-wrap .toggler:checked:hover + .hamburger > div {
  77.   transform: rotate(225deg);
  78. }
  79.  
  80. /* Show Menu */
  81. .menu-wrap .toggler:checked ~ .menu {
  82.   visibility: visible;
  83. }
  84.  
  85. .menu-wrap .toggler:checked ~ .menu > div {
  86.   transform: scale(1);
  87.   transition-duration: var(--menu-speed);
  88. }
  89.  
  90. .menu-wrap .toggler:checked ~ .menu > div > div {
  91.   opacity: 1;
  92.   transition: opacity 0.4s ease 0.4s;
  93. }
  94.  
  95. .menu-wrap .menu {
  96.   position: fixed;
  97.   top: 0;
  98.   left: 0;
  99.   width: 100%;
  100.   height: 100%;
  101.   visibility: hidden;
  102.   overflow: hidden;
  103.   display: flex;
  104.   align-items: center;
  105.   justify-content: center;
  106. }
  107.  
  108. .menu-wrap .menu > div {
  109.   background: var(--overlay-color);
  110.   border-radius: 50%;
  111.   width: 200vw;
  112.   height: 200vw;
  113.   display: flex;
  114.   flex: none;
  115.   align-items: center;
  116.   justify-content: center;
  117.   transform: scale(0);
  118.   transition: all 0.4s ease;
  119. }
  120.  
  121. .menu-wrap .menu > div > div {
  122.   text-align: center;
  123.   max-width: 90vw;
  124.   max-height: 100vh;
  125.   opacity: 0;
  126.   transition: opacity 0.4s ease;
  127. }
  128.  
  129. .menu-wrap .menu > div > div > ul > li {
  130.   list-style: none;
  131.   color: #fff;
  132.   font-size: 1.5rem;
  133.   padding: 1rem;
  134. }
  135.  
  136. .menu-wrap .menu > div > div > ul > li > a {
  137.   color: inherit;
  138.   text-decoration: none;
  139.   transition: color 0.4s ease;
  140. }
  141.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement