{"componentChunkName":"component---src-templates-post-js","path":"/create-nav-and-header-react","result":{"data":{"markdownRemark":{"html":"<p>In this post we will create a Navigation bar and a Header component for our landing page.</p>\n<p>Go head and create a <code class=\"language-text\">navs</code> folder and create a <code class=\"language-text\">Nav.js</code> file with the following:</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">import</span> React <span class=\"token keyword\">from</span> <span class=\"token string\">\"react\"</span>\n\n<span class=\"token keyword\">const</span> <span class=\"token function-variable function\">Nav</span> <span class=\"token operator\">=</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=></span> <span class=\"token punctuation\">(</span>\n  <span class=\"token operator\">&lt;</span>nav className<span class=\"token operator\">=</span><span class=\"token string\">\"nav border-top flex items-center justify-between flex-wrap bg-transparent p-55 z-100\"</span><span class=\"token operator\">></span>\n    <span class=\"token operator\">&lt;</span>div className<span class=\"token operator\">=</span><span class=\"token string\">\"flex items-center flex-no-shrink text\"</span><span class=\"token operator\">></span>\n      <span class=\"token operator\">&lt;</span>h1 className<span class=\"token operator\">=</span><span class=\"token string\">\"font-display text-red text-2xl\"</span><span class=\"token operator\">></span>\n        <span class=\"token operator\">&lt;</span>a className<span class=\"token operator\">=</span><span class=\"token string\">\"no-underline text-red\"</span> href<span class=\"token operator\">=</span><span class=\"token string\">\"/\"</span><span class=\"token operator\">></span>\n          Lunar\n        <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>a<span class=\"token operator\">></span>\n      <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>h1<span class=\"token operator\">></span>\n    <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>div<span class=\"token operator\">></span>\n  <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>nav<span class=\"token operator\">></span>\n<span class=\"token punctuation\">)</span>\n\n<span class=\"token keyword\">export</span> <span class=\"token keyword\">default</span> Nav</code></pre></div>\n<p>🌞 We have an HTML Nav bar that is is responsive and allows the user to redirect to the Home page of the site.</p>\n<p>Next up create a <code class=\"language-text\">headers</code> folder and create a file called <code class=\"language-text\">LandingHeader.js</code> with the following contents:</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">import</span> React <span class=\"token keyword\">from</span> <span class=\"token string\">\"react\"</span>\n<span class=\"token keyword\">import</span> <span class=\"token punctuation\">{</span> HeadingOne <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"../typography\"</span>\n<span class=\"token keyword\">const</span> LandingHeader <span class=\"token operator\">=</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">{</span> imgURL<span class=\"token punctuation\">,</span> text <span class=\"token operator\">=</span> <span class=\"token string\">\"\"</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=></span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">return</span> <span class=\"token punctuation\">(</span>\n    <span class=\"token operator\">&lt;</span><span class=\"token operator\">></span>\n      <span class=\"token operator\">&lt;</span>div\n        className<span class=\"token operator\">=</span><span class=\"token string\">\" text-center bg-transparent \"</span>\n        style<span class=\"token operator\">=</span><span class=\"token punctuation\">{</span><span class=\"token punctuation\">{</span>\n          background<span class=\"token operator\">:</span> <span class=\"token template-string\"><span class=\"token template-punctuation string\">`</span><span class=\"token string\">url(</span><span class=\"token interpolation\"><span class=\"token interpolation-punctuation punctuation\">${</span>imgURL<span class=\"token interpolation-punctuation punctuation\">}</span></span><span class=\"token string\">)no-repeat center center</span><span class=\"token template-punctuation string\">`</span></span><span class=\"token punctuation\">,</span>\n          backgroundSize<span class=\"token operator\">:</span> <span class=\"token string\">\"cover\"</span><span class=\"token punctuation\">,</span>\n          height<span class=\"token operator\">:</span> <span class=\"token string\">\"570px\"</span><span class=\"token punctuation\">,</span>\n          marginTop<span class=\"token operator\">:</span> <span class=\"token string\">\"-85px\"</span><span class=\"token punctuation\">,</span>\n        <span class=\"token punctuation\">}</span><span class=\"token punctuation\">}</span>\n      <span class=\"token operator\">></span>\n        <span class=\"token operator\">&lt;</span>HeadingOne className<span class=\"token operator\">=</span><span class=\"token string\">\"text-5xl pt-44 s:text-4xl\"</span><span class=\"token operator\">></span><span class=\"token punctuation\">{</span>text<span class=\"token punctuation\">}</span><span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>HeadingOne<span class=\"token operator\">></span>\n      <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>div<span class=\"token operator\">></span>\n    <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span><span class=\"token operator\">></span>\n  <span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token keyword\">export</span> <span class=\"token keyword\">default</span> LandingHeader</code></pre></div>\n<p>🌞 This is a <code class=\"language-text\">div</code> with a custom style to allow the image to sit in the background of the component. Tailwind CSS has directives and plugins for this sort of thing, however I left this out and went the vanilla route. Do not be scared to code!</p>\n<p>🌞 Then we have Vanilla CSS styles for this component as you are unable to replicate this in TailwindCSS.</p>\n<p>🌞 Lastly, we have two props for the image URL and whatever text you want to put in the <code class=\"language-text\">H1</code>.</p>\n<p>Once you're done it should look like this:</p>\n<p><img src=\"/uploads/landingheader.png\" alt=\"landingheader-component\"></p>","frontmatter":{"date":"July 16, 2020","path":"/create-nav-and-header-react","title":"Create Nav and Header","postnumber":36}}},"pageContext":{"previous":{"node":{"frontmatter":{"path":"/create-typography-components-react","postnumber":37}}},"next":{"node":{"frontmatter":{"path":"/execute-booking-mutation","postnumber":35}}}}},"staticQueryHashes":["3207677222","3649515864","63159454"]}