Advertisement
shadiff

nav issue

May 4th, 2022
165
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.52 KB | None | 0 0
  1. Navbar.js
  2. import React, {useState} from 'react'
  3. import ProductContext from '../../Context/ProductContext';
  4. import {useContext} from 'react'
  5. import './Navbar.css'
  6.  
  7.  
  8. const Navbar = () => {
  9. const { entryStore } = useContext(ProductContext)
  10. return (
  11. <section className="Navbar">
  12. <span className="Nav-logo">SpendItHere</span>
  13.  
  14. {entryStore && (
  15. entryStore.map((entry, index) => {
  16. return (
  17. <React.Fragment key={entry.id}>
  18. <div className="Nav-items">{entry.title}</div>
  19. </React.Fragment>
  20. )
  21. })
  22. )}
  23.  
  24. <div className="Nav-toggle">
  25. <div className="bar"></div>
  26. </div>
  27. </section>
  28. )
  29. }
  30. export default Navbar;
  31. ----------------------------------------------------------------------------------------------------------------------------
  32. Navbar.css
  33. .Navbar{
  34. height: 60px;
  35. display: flex;
  36. justify-content: space-between;
  37. align-items: center;
  38. background: #E5CB9F;
  39. }
  40.  
  41. .Navbar > .Nav-logo {
  42. font-weight: 700;
  43. font-size: 21px;
  44. margin: 15px;
  45. color: #fff;
  46. }
  47.  
  48. .Navbar > .Nav-items {
  49. color: #fff;
  50. font-size: 16px;
  51. text-decoration: none;
  52. margin: 15px;
  53. position: relative;
  54. opacity: 0.9;
  55. }
  56.  
  57. .Navbar > .Nav-items:hover {
  58. opacity: 1;
  59. }
  60.  
  61. .Navbar>.Nav-items::before {
  62. content: "";
  63. position: absolute;
  64. left: 0;
  65. bottom: 0;
  66. width: 0;
  67. height: 2px;
  68. background: #fff;
  69. transition: all .45s;
  70. }
  71.  
  72. .Navbar > .Nav-items:hover::before {
  73. width: 100%;
  74. }
  75.  
  76. .Navbar>.Nav-toggle {
  77. display: none;
  78. }
  79.  
  80. @media (max-width: 600px) {
  81. .Navbar> .Nav-items {
  82. position: absolute;
  83. top: 50px;
  84. display: flex;
  85. flex-direction: column;
  86. padding: 1px 1px;
  87. background: #383838;
  88. left: 0;
  89. width: 70%;
  90. height: 50%;
  91. overflow-x: hidden;
  92. overflow-y: scroll;
  93. /* transform: translateX(-110%);
  94. transition: all .45s; */
  95. }
  96. .Navbar>.Nav-items::before {
  97. background: transparent;
  98. }
  99.  
  100. .Navbar>.Nav-items.open {
  101. transform: translateX(0);
  102. }
  103.  
  104. .Navbar>.Nav-toggle {
  105. display: flex;
  106. width: 50px;
  107. height: 50px;
  108. align-items: center;
  109. justify-content: center;
  110. cursor: pointer;
  111. }
  112.  
  113. .Nav-toggle>.bar {
  114. position: relative;
  115. width: 32px;
  116. height: 2px;
  117. background: #252424;
  118. transition: all 0.45s ease-in-out;
  119. }
  120.  
  121. .Nav-toggle>.bar::before,
  122. .nav-toggle>.bar::after {
  123. content: " ";
  124. position: absolute;
  125. height: 2px;
  126. background-color: #0f0e0e;
  127. border-radius: 2px;
  128. transition: all .45s ease-in-out;
  129. }
  130.  
  131. .Nav-toggle>.bar::before {
  132. width: 25px;
  133. transform: translateY(-8px);
  134. right: 0;
  135. }
  136.  
  137. .Nav-toggle>.bar::after {
  138. width: 32px;
  139. transform: translateY(8px);
  140. }
  141.  
  142. .Nav-toggle.open>.bar {
  143. transform: translateX(-40px);
  144. background: transparent;
  145. }
  146.  
  147. .Nav-toggle.open>.bar::before {
  148. width: 32px;
  149. transform: rotate(45deg) translate(26px, -26px);
  150. }
  151.  
  152. .Nav-toggle.open>.bar::after {
  153. transform: rotate(-45deg) translate(26px, 26px);
  154. }
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement