summaryrefslogtreecommitdiffstats
path: root/stepped-solutions
diff options
context:
space:
mode:
authorjameygleason <james.p.gleason@gmail.com>2018-09-20 08:03:07 -0400
committerjameygleason <james.p.gleason@gmail.com>2018-09-20 08:03:07 -0400
commit09b5fe3b69c5082afe0129d451bd1afdd3577227 (patch)
tree766d38cbddc3f4eb59d0143ba5d2872735731dc4 /stepped-solutions
parent051f9d7191d9184f303da071b3eb85852e71d4a5 (diff)
Stepped Solutions
Diffstat (limited to 'stepped-solutions')
-rwxr-xr-xstepped-solutions/07/frontend/components/Header.js50
-rwxr-xr-xstepped-solutions/07/frontend/components/Page.js34
2 files changed, 76 insertions, 8 deletions
diff --git a/stepped-solutions/07/frontend/components/Header.js b/stepped-solutions/07/frontend/components/Header.js
index 51de94c..5a11aa4 100755
--- a/stepped-solutions/07/frontend/components/Header.js
+++ b/stepped-solutions/07/frontend/components/Header.js
@@ -1,16 +1,60 @@
+import Link from 'next/link';
+import styled from 'styled-components';
import Nav from './Nav';
+const Logo = styled.h1`
+ font-size: 4rem;
+ margin-left: 2rem;
+ position: relative;
+ z-index: 2;
+ transform: skew(-7deg);
+ a {
+ padding: 0.5rem 1rem;
+ background: ${props => props.theme.red};
+ color: white;
+ text-transform: uppercase;
+ text-decoration: none;
+ }
+ @media (max-width: 1300px) {
+ margin: 0;
+ text-align: center;
+ }
+`;
+
+const StyledHeader = styled.header`
+ .bar {
+ border-bottom: 10px solid ${props => props.theme.black};
+ display: grid;
+ grid-template-columns: auto 1fr;
+ justify-content: space-between;
+ align-items: stretch;
+ @media (max-width: 1300px) {
+ grid-template-columns: 1fr;
+ justify-content: center;
+ }
+ }
+ .sub-bar {
+ display: grid;
+ grid-template-columns: 1fr auto;
+ border-bottom: 1px solid ${props => props.theme.lightgrey};
+ }
+`;
+
const Header = () => (
- <div>
+ <StyledHeader>
<div className="bar">
- <a href="">Sick Fits</a>
+ <Logo>
+ <Link href="/">
+ <a>Sick Fits</a>
+ </Link>
+ </Logo>
<Nav />
</div>
<div className="sub-bar">
<p>Search</p>
</div>
<div>Cart</div>
- </div>
+ </StyledHeader>
);
export default Header;
diff --git a/stepped-solutions/07/frontend/components/Page.js b/stepped-solutions/07/frontend/components/Page.js
index 11bb409..a8aefa4 100755
--- a/stepped-solutions/07/frontend/components/Page.js
+++ b/stepped-solutions/07/frontend/components/Page.js
@@ -1,15 +1,39 @@
import React, { Component } from 'react';
+import styled, { ThemeProvider, injectGlobal } from 'styled-components';
import Header from './Header';
import Meta from './Meta';
+const theme = {
+ red: '#FF0000',
+ black: '#393939',
+ grey: '#3A3A3A',
+ lightgrey: '#E1E1E1',
+ offWhite: '#EDEDED',
+ maxWidth: '1000px',
+ bs: '0 12px 24px 0 rgba(0, 0, 0, 0.09)',
+};
+
+const StyledPage = styled.div`
+ background: white;
+ color: ${props => props.theme.black};
+`;
+
+const Inner = styled.div`
+ max-width: ${props => props.theme.maxWidth};
+ margin: 0 auto;
+ padding: 2rem;
+`;
+
class Page extends Component {
render() {
return (
- <div>
- <Meta />
- <Header />
- {this.props.children}
- </div>
+ <ThemeProvider theme={theme}>
+ <StyledPage>
+ <Meta />
+ <Header />
+ <Inner>{this.props.children}</Inner>
+ </StyledPage>
+ </ThemeProvider>
);
}
}