Skip to content

Commit 6981a3c

Browse files
committed
Fixing menu bars
1 parent 8d652a7 commit 6981a3c

File tree

3 files changed

+87
-74
lines changed

3 files changed

+87
-74
lines changed

src/components/Header.tsx

Lines changed: 2 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,11 @@
11
import React from "react";
22
import "../styles.css";
3+
import Menu from "./Menu";
34

45
const Header = () => {
56
return (
67
<header>
7-
<div className="mobile-menu-wrapper">
8-
<button aria-label="menu button" className="menu-btn">
9-
<div id="close-icon" className="close-icon" data-state="hide">
10-
<i className="fa-solid fa-xmark"></i>
11-
</div>
12-
<div className="bar" data-state="visible"></div>
13-
<div className="bar" data-state="visible"></div>
14-
<div className="bar" data-state="visible"></div>
15-
</button>
16-
<nav className="mobile-navbar" data-state="close">
17-
<ul className="list--mobile-nav">
18-
<li>
19-
<a className="link page-nav-link" href="#about">
20-
About
21-
</a>
22-
</li>
23-
<li>
24-
<a className="link page-nav-link" href="#experience">
25-
Experience
26-
</a>
27-
</li>
28-
<li>
29-
<a className="link page-nav-link" href="#projects">
30-
Projects
31-
</a>
32-
</li>
33-
<li>
34-
<a
35-
className="link link__external social-link__github"
36-
href="https://github.com/avenmia/"
37-
rel="noopener noreferrer"
38-
target="_blank"
39-
>
40-
GitHub
41-
</a>
42-
</li>
43-
<li>
44-
<a
45-
className="link link__external social-link__linkedin"
46-
href="https://www.linkedin.com/in/michael-avendano/"
47-
rel="noopener noreferrer"
48-
target="_blank"
49-
>
50-
LinkedIn
51-
</a>
52-
</li>
53-
<li>
54-
<a
55-
className="link link__external social-link__stackoverflow"
56-
href="https://stackoverflow.com/users/7331107/avenmia"
57-
rel="noopener noreferrer"
58-
target="_blank"
59-
>
60-
Stack Overflow
61-
</a>
62-
</li>
63-
</ul>
64-
</nav>
65-
</div>
8+
<Menu />
669
<nav className="navbar">
6710
<a
6811
className="navbar__link"

src/components/Menu.tsx

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
import React, { useState } from "react";
2+
import "../styles.css";
3+
4+
const Menu = () => {
5+
const [open, setOpen] = useState(false);
6+
const toggleMenu = () => setOpen(!open);
7+
8+
return (
9+
<div className="mobile-menu-wrapper">
10+
<button
11+
aria-label="menu button"
12+
className="menu-btn"
13+
onClick={toggleMenu}
14+
>
15+
{open ? (
16+
<div id="close-icon" className="close-icon">
17+
<i className="fa-solid fa-xmark"></i>
18+
</div>
19+
) : (
20+
<div id="open-icon" className="open-icon">
21+
<i className="fa-solid fa-bars"></i>
22+
</div>
23+
)}
24+
</button>
25+
{open ? (
26+
<nav className="mobile-navbar">
27+
<ul className="list--mobile-nav">
28+
<li>
29+
<a className="link page-nav-link" href="#about">
30+
About
31+
</a>
32+
</li>
33+
<li>
34+
<a className="link page-nav-link" href="#experience">
35+
Experience
36+
</a>
37+
</li>
38+
<li>
39+
<a className="link page-nav-link" href="#projects">
40+
Projects
41+
</a>
42+
</li>
43+
<li>
44+
<a
45+
className="link link__external social-link__github"
46+
href="https://github.com/avenmia/"
47+
rel="noopener noreferrer"
48+
target="_blank"
49+
>
50+
GitHub
51+
</a>
52+
</li>
53+
<li>
54+
<a
55+
className="link link__external social-link__linkedin"
56+
href="https://www.linkedin.com/in/michael-avendano/"
57+
rel="noopener noreferrer"
58+
target="_blank"
59+
>
60+
LinkedIn
61+
</a>
62+
</li>
63+
<li>
64+
<a
65+
className="link link__external social-link__stackoverflow"
66+
href="https://stackoverflow.com/users/7331107/avenmia"
67+
rel="noopener noreferrer"
68+
target="_blank"
69+
>
70+
Stack Overflow
71+
</a>
72+
</li>
73+
</ul>
74+
</nav>
75+
) : null}
76+
</div>
77+
);
78+
};
79+
80+
export default Menu;

src/styles.css

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -238,29 +238,19 @@ li {
238238
display: none;
239239
}
240240

241-
.bar[data-state="visible"] {
242-
height: 0.2rem;
243-
width: 1.5rem;
244-
background-color: var(--section-accent-dark);
245-
margin: 0.3125rem;
246-
border-radius: 5px;
247-
}
248-
249-
.bar[data-state="hide"] {
250-
display: none;
241+
.open-icon .fa-bars {
242+
color: var(--section-accent-dark); /* same color as your old bars */
243+
font-size: 1.5rem; /* approximate width you had before */
244+
margin: 0.3125rem; /* matches your old margin */
251245
}
252246

253-
.close-icon[data-state="visible"] {
247+
.close-icon {
254248
display: block;
255249
color: white;
256250
font-size: 1.5rem;
257251
margin-left: 0.3125rem;
258252
}
259253

260-
.close-icon[data-state="hide"] {
261-
display: none;
262-
}
263-
264254
.mobile-menu-wrapper {
265255
position: fixed;
266256
left: 1rem;

0 commit comments

Comments
 (0)