Skip to content

Commit 1845335

Browse files
committed
animate the nav thing
1 parent 33c5f28 commit 1845335

File tree

4 files changed

+39
-5
lines changed

4 files changed

+39
-5
lines changed

src/components/public/menu/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
33
import styles from './menu.scss';
44

55
const Menu = props => (
6-
<div className={props.active ? styles.active : ''}>
6+
<div id="menu" className={props.active ? styles.active : ''}>
77
<div className={styles.overlay} onClick={props.toggle}></div>
88
<div className={styles.menu}>
99
<div className={styles.background}></div>

src/components/public/nav/ic_menu.svg

+6-2
Loading

src/components/public/nav/index.js

+7-2
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,15 @@ class Nav extends React.Component {
3232
<LogoType />
3333
</div>
3434
<div className={styles.menu}>
35-
<Menu active={this.state.active} toggle={this.toggleActive} />
36-
<button className={styles.toggle} onClick={this.toggleActive} title="Toggle menu">
35+
<button
36+
className={`${styles.toggle} ${this.state.active ? styles.active : ''}`}
37+
onClick={this.toggleActive}
38+
aria-expanded={this.state.active}
39+
title="Toggle menu"
40+
aria-controls="menu">
3741
<MenuIcon/>
3842
</button>
43+
<Menu active={this.state.active} toggle={this.toggleActive} />
3944
</div>
4045
</div>
4146
</nav>

src/components/public/nav/nav.scss

+25
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,31 @@
4545
outline: none;
4646
color: $primary;
4747
}
48+
49+
svg, rect {
50+
transform-origin: center;
51+
transition: all 0.3s ease;
52+
}
53+
54+
&.active {
55+
rect:first-child {
56+
transform-origin: top left;
57+
transform: rotate(45deg) translateX(1.5px);
58+
}
59+
60+
rect:nth-child(2) {
61+
opacity: 0;
62+
}
63+
64+
rect:nth-child(3) {
65+
transform-origin: bottom left;
66+
transform: rotate(-45deg) translateX(2.5px);
67+
}
68+
69+
svg {
70+
transform: rotate(90deg);
71+
}
72+
}
4873
}
4974

5075
@media (min-width: 34em) {

0 commit comments

Comments
 (0)