Feat(Header): Cria header da pagina desktop

This commit is contained in:
Rhayllon Daudt 2023-01-05 15:27:29 -03:00
parent 7484dfb952
commit dbea914211
26 changed files with 272 additions and 22 deletions

View File

@ -8,6 +8,8 @@
name="description"
content="Web site created using create-react-app"
/>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<!--
manifest.json provides metadata used when your web app is installed on a
@ -23,6 +25,7 @@
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap" rel="stylesheet">
<title>React App</title>
</head>
<body>

Binary file not shown.

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 879 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 752 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 739 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 996 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 559 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 892 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -0,0 +1,12 @@
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_4206_25)">
<path d="M27.823 4.07236C27.6697 3.88079 27.4377 3.76928 27.1923 3.76928H5.69581L5.09469 1.16451C5.01009 0.798054 4.68377 0.538452 4.30768 0.538452H0.80768C0.361648 0.538452 0 0.9001 0 1.34619C0 1.79227 0.361648 2.15387 0.80768 2.15387H3.66516L7.7455 19.8355C7.83005 20.2019 8.15642 20.4615 8.53251 20.4615H24.7154C25.1614 20.4615 25.523 20.0999 25.523 19.6539C25.523 19.2078 25.1614 18.8462 24.7154 18.8462H9.17509L8.55384 16.1539H24.7693C25.1471 16.1539 25.4744 15.892 25.5573 15.5235L27.9803 4.75426C28.0342 4.51483 27.9763 4.26398 27.823 4.07236Z" fill="white"/>
<path d="M11.8462 21.5385C10.2132 21.5385 8.88464 22.867 8.88464 24.5C8.88464 26.133 10.2132 27.4615 11.8462 27.4615C13.4792 27.4615 14.8077 26.133 14.8077 24.5C14.8077 22.867 13.4792 21.5385 11.8462 21.5385Z" fill="white"/>
<path d="M21.5385 21.5385C19.9055 21.5385 18.5769 22.867 18.5769 24.5C18.5769 26.133 19.9054 27.4615 21.5385 27.4615C23.1714 27.4615 24.5 26.133 24.5 24.5C24.5 22.867 23.1715 21.5385 21.5385 21.5385Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_4206_25">
<rect width="28" height="28" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,3 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.2094 11.6187C14.0951 10.4091 14.6249 8.92334 14.6249 7.31267C14.6249 3.2807 11.3444 0.000183105 7.31245 0.000183105C3.28048 0.000183105 0 3.2807 0 7.31267C0 11.3446 3.28052 14.6252 7.31248 14.6252C8.92315 14.6252 10.409 14.0953 11.6186 13.2095L16.4092 18.0001L18 16.4093C18 16.4092 13.2094 11.6187 13.2094 11.6187V11.6187ZM7.31248 12.3751C4.52086 12.3751 2.25001 10.1043 2.25001 7.31267C2.25001 4.52104 4.52086 2.25019 7.31248 2.25019C10.1041 2.25019 12.375 4.52104 12.375 7.31267C12.375 10.1043 10.1041 12.3751 7.31248 12.3751Z" fill="#303030"/>
</svg>

After

Width:  |  Height:  |  Size: 663 B

View File

@ -0,0 +1,16 @@
<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_5140_910)">
<g clip-path="url(#clip1_5140_910)">
<path d="M19.1778 27.4911V18.544H22.1734L22.6228 15.0561H19.1778V12.8296C19.1778 11.8201 19.4564 11.1321 20.9026 11.1321L22.7441 11.1314V8.01166C22.4256 7.97019 21.3325 7.87511 20.0602 7.87511C17.4034 7.87511 15.5845 9.50026 15.5845 12.4842V15.0561H12.5799V18.544H15.5845V27.4911H19.1778Z" fill="#303030"/>
</g>
<circle cx="17.5" cy="17.5" r="16.5" stroke="#303030" stroke-width="2"/>
</g>
<defs>
<clipPath id="clip0_5140_910">
<rect width="35" height="35" fill="white"/>
</clipPath>
<clipPath id="clip1_5140_910">
<rect width="19.574" height="19.616" fill="white" transform="translate(7.87497 7.87509)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 803 B

View File

@ -0,0 +1,18 @@
<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_5140_915)">
<g clip-path="url(#clip1_5140_915)">
<path d="M22.0996 7.87509H13.2966C10.3071 7.87509 7.87497 10.3036 7.87497 13.2884V22.0777C7.87497 25.0626 10.3071 27.491 13.2966 27.491H22.0996C25.0893 27.491 27.5214 25.0625 27.5214 22.0777V13.2884C27.5215 10.3036 25.0893 7.87509 22.0996 7.87509ZM25.7784 22.0777C25.7784 24.103 24.1281 25.7506 22.0997 25.7506H13.2966C11.2683 25.7507 9.6181 24.103 9.6181 22.0777V13.2884C9.6181 11.2632 11.2683 9.61551 13.2966 9.61551H22.0996C24.128 9.61551 25.7783 11.2632 25.7783 13.2884V22.0777H25.7784Z" fill="#303030"/>
<path d="M17.6982 12.6288C14.9067 12.6288 12.6358 14.8962 12.6358 17.6833C12.6358 20.4703 14.9067 22.7376 17.6982 22.7376C20.4896 22.7376 22.7606 20.4703 22.7606 17.6833C22.7606 14.8962 20.4896 12.6288 17.6982 12.6288ZM17.6982 20.9971C15.868 20.9971 14.3789 19.5105 14.3789 17.6832C14.3789 15.8558 15.8679 14.3691 17.6982 14.3691C19.5285 14.3691 21.0175 15.8558 21.0175 17.6832C21.0175 19.5105 19.5284 20.9971 17.6982 20.9971Z" fill="#303030"/>
<path d="M22.9729 11.1531C22.6371 11.1531 22.3072 11.2889 22.07 11.5267C21.8317 11.7634 21.6946 12.0929 21.6946 12.4294C21.6946 12.7648 21.8318 13.0942 22.07 13.3321C22.3071 13.5688 22.6371 13.7057 22.9729 13.7057C23.3099 13.7057 23.6388 13.5688 23.877 13.3321C24.1153 13.0942 24.2512 12.7647 24.2512 12.4294C24.2512 12.0929 24.1153 11.7634 23.877 11.5267C23.64 11.2889 23.3099 11.1531 22.9729 11.1531Z" fill="#303030"/>
</g>
<circle cx="17.5" cy="17.5" r="16.5" stroke="#303030" stroke-width="2"/>
</g>
<defs>
<clipPath id="clip0_5140_915">
<rect width="35" height="35" fill="white"/>
</clipPath>
<clipPath id="clip1_5140_915">
<rect width="19.6465" height="19.616" fill="white" transform="translate(7.87497 7.87509)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1,18 @@
<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_5140_930)">
<circle cx="17.5" cy="17.5" r="16.5" stroke="#303030" stroke-width="2"/>
<g clip-path="url(#clip1_5140_930)">
<path d="M13.4447 13.8592H10.2981C10.1584 13.8592 10.0453 13.9724 10.0453 14.112V24.2205C10.0453 24.3602 10.1584 24.4733 10.2981 24.4733H13.4447C13.5843 24.4733 13.6975 24.3602 13.6975 24.2205V14.112C13.6975 13.9724 13.5843 13.8592 13.4447 13.8592Z" fill="#303030"/>
<path d="M11.8725 8.83394C10.7276 8.83394 9.7962 9.76436 9.7962 10.908C9.7962 12.0521 10.7276 12.9829 11.8725 12.9829C13.0165 12.9829 13.9472 12.0521 13.9472 10.908C13.9473 9.76436 13.0165 8.83394 11.8725 8.83394Z" fill="#303030"/>
<path d="M21.4482 13.6079C20.1844 13.6079 19.2502 14.1512 18.6835 14.7685V14.112C18.6835 13.9724 18.5704 13.8592 18.4307 13.8592H15.4174C15.2777 13.8592 15.1646 13.9724 15.1646 14.112V24.2205C15.1646 24.3602 15.2777 24.4733 15.4174 24.4733H18.557C18.6967 24.4733 18.8098 24.3602 18.8098 24.2205V19.2191C18.8098 17.5338 19.2676 16.8772 20.4425 16.8772C21.722 16.8772 21.8236 17.9298 21.8236 19.3058V24.2206C21.8236 24.3602 21.9368 24.4734 22.0764 24.4734H25.2173C25.3569 24.4734 25.4701 24.3602 25.4701 24.2206V18.6759C25.4701 16.1698 24.9922 13.6079 21.4482 13.6079Z" fill="#303030"/>
</g>
</g>
<defs>
<clipPath id="clip0_5140_930">
<rect width="35" height="35" fill="white"/>
</clipPath>
<clipPath id="clip1_5140_930">
<rect width="15.6739" height="15.6739" fill="white" transform="translate(9.7962 8.8167)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1,11 @@
<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_5140_922)">
<circle cx="17.5" cy="17.5" r="16.5" stroke="#303030" stroke-width="2"/>
<path d="M29.9915 10.1563C29.0947 10.5497 28.1392 10.8104 27.143 10.937C28.1679 10.3251 28.95 9.36358 29.3178 8.20462C28.3623 8.7743 27.3073 9.1767 26.183 9.40126C25.2757 8.43521 23.9826 7.83688 22.572 7.83688C19.8351 7.83688 17.6317 10.0584 17.6317 12.7817C17.6317 13.1735 17.6648 13.5503 17.7462 13.909C13.6363 13.7086 9.99968 11.7388 7.55666 8.73813C7.13015 9.47812 6.87997 10.3251 6.87997 11.2369C6.87997 12.949 7.76163 14.4666 9.07583 15.3453C8.28158 15.3302 7.50241 15.0996 6.8423 14.7364C6.8423 14.7515 6.8423 14.7711 6.8423 14.7907C6.8423 17.193 8.55588 19.1884 10.803 19.6481C10.4006 19.7581 9.96201 19.8108 9.50686 19.8108C9.19037 19.8108 8.87086 19.7928 8.57095 19.7264C9.21147 21.6842 11.029 23.1235 13.1902 23.1702C11.5083 24.4859 9.37273 25.2786 7.06083 25.2786C6.65541 25.2786 6.26658 25.2605 5.87775 25.2108C8.06757 26.623 10.6628 27.4293 13.4615 27.4293C22.5584 27.4293 27.5319 19.8937 27.5319 13.3619C27.5319 13.1434 27.5243 12.9324 27.5138 12.7229C28.4949 12.0266 29.3193 11.157 29.9915 10.1563Z" fill="#303030"/>
</g>
<defs>
<clipPath id="clip0_5140_922">
<rect width="35" height="35" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,11 @@
<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_5140_927)">
<circle cx="17.5" cy="17.5" r="16.5" stroke="#303030" stroke-width="2"/>
<path d="M27.8027 12.2486C27.5447 11.2896 26.7886 10.5336 25.8297 10.2754C24.0779 9.79604 17.0706 9.79604 17.0706 9.79604C17.0706 9.79604 10.0636 9.79604 8.31176 10.2572C7.3713 10.5152 6.59672 11.2897 6.33875 12.2486C5.87775 14.0003 5.87775 17.633 5.87775 17.633C5.87775 17.633 5.87775 21.284 6.33875 23.0174C6.59699 23.9763 7.35285 24.7323 8.31189 24.9905C10.082 25.47 17.0709 25.47 17.0709 25.47C17.0709 25.47 24.0779 25.47 25.8297 25.0088C26.7887 24.7507 27.5447 23.9947 27.803 23.0358C28.2638 21.284 28.2638 17.6514 28.2638 17.6514C28.2638 17.6514 28.2823 14.0003 27.8027 12.2486ZM14.8396 20.989V14.277L20.6665 17.633L14.8396 20.989Z" fill="#303030"/>
</g>
<defs>
<clipPath id="clip0_5140_927">
<rect width="35" height="35" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 976 B

View File

@ -1,26 +1,52 @@
import React from "react";
import styles from "../scss/partials/header.module.scss"
import logo from "../assets/imgs/Image-LogoM3Academy.png"
import iconLupa from "../assets/svgs/Vector-Search.svg"
import iconCart from "../assets/svgs/Cart-Icon.svg"
const Header = () => {
return <header className={styles["page-header"]}>
<HeaderTop/>
<HeaderBottom/>
</header>
}
const HeaderTop = () => {
return (
<div className="page-header__top">
<a href=""><img src="" alt="" /></a>
<input type="text" />
<div>
<a href="">Entrar</a>
<img src="" alt="" />
<div className={styles["page-header__top-wrapper"]}>
<a className={styles["page-header__top-wrapper__logo-wrapper"]} href="/"><img className={styles["page-header__top-wrapper__logo-wrapper__logo"]} src= { logo } alt="LogoM3" /></a>
<div className={styles["page-header__top-wrapper__search-bar"]}>
<input className={styles["page-header__top-wrapper__search-bar__input"]} type="text" placeholder="Buscar..." />
<button className={styles["page-header__top-wrapper__search-bar__input-button"]}><img className={styles["page-header__top-wrapper__search-bar__input-button__img"]} src= { iconLupa } alt="Icone Busca" /></button>
</div>
<div className={styles["page-header__top-wrapper__login-cart-wrapper"]}>
<a className={styles["page-header__top-wrapper__login-cart-wrapper__login"]} href="">Entrar</a>
<img className={styles["page-header__top-wrapper__login-cart-wrapper__cart"]} src={ iconCart } alt="Icone Carrinho" />
</div>
</div>
)
};
// const HeaderBottom = () => {
// return (
// <>
// <img src="" alt="" />
// <input type="text" />
// <a href="">Entrar</a>
// <img src="" alt="" />
// </>
// )
// };
const HeaderBottom = () => {
return (
<div className={styles["page-header__bottom-wrapper"]}>
<nav className={styles["page-header__bottom-wrapper-content"]}>
<ul className={styles["page-header__bottom-wrapper-content__links-wrapper"]}>
<a className={styles["page-header__bottom-wrapper-content__links-wrapper__link"]} href="">
<li className={styles["page-header__bottom-wrapper-content__links-wrapper__link-content"]}>cursos</li>
</a>
<a className={styles["page-header__bottom-wrapper-content__links-wrapper__link"]} href="">
<li className={styles["page-header__bottom-wrapper-content__links-wrapper__link-content"]}>saiba mais</li>
</a>
<a className={styles["page-header__bottom-wrapper-content__links-wrapper__link"]} href="">
<li className={styles["page-header__bottom-wrapper-content__links-wrapper__link-content"]}>institucionais</li>
</a>
</ul>
</nav>
</div>
)
};
export { HeaderTop };
export { Header };

View File

@ -1,6 +1,7 @@
import React from 'react';
import ReactDOM from 'react-dom/client';
import './global.scss';
import './scss/global.scss';
import './scss/utils/variables.scss';
import {Home} from "./pages/Home"

View File

@ -1,11 +1,11 @@
import React from "react";
import { HeaderTop } from "../components/Header"
import { Header } from "../components/Header"
const Home = () => {
return <header className="page-header">
<HeaderTop/>
</header>;
return <>
<Header/>
</>;
};
export { Home };

View File

@ -0,0 +1,119 @@
.page-header{
background-color: var(--black1);
margin-bottom: 200px;
&__top-wrapper{
display: grid;
grid-template-columns: repeat(3, 1fr);
padding: 22px 0;
width: 84.38%;
margin: 0 auto;
&__logo-wrapper {
display: flex;
align-items: center;
width: 38.7%;
&__logo{
width: 100%;
}
}
&__search-bar{
display: flex;
align-items: center;
justify-content: center;
width: max-content;
border: 2px solid var(--white2);
border-radius: 5px;
background-color: var(--white1);
box-sizing: border-box;
padding: 5.5px 16px;
width: 75%;
margin: 0 auto;
&__input{
border: none;
width: 100%;
color: var(--grey1);
font-size: 14px;
line-height: 16px;
outline: 0;
&::placeholder{
font-family: var(--font-roboto);
font-size: 14px;
line-height: 16px;
color: var(--grey1);
}
}
&__input-button{
border: none;
background: transparent;
padding: 0;
display: flex;
outline: 0;
&__img{
width: 100%;
min-width: 16px;
}
}
}
&__login-cart-wrapper{
display: flex;
align-items: center;
justify-content: end;
width: 100%;
&__login{
text-decoration: none;
color: var(--white1);
text-transform: uppercase;
font-family: var(--font-roboto);
font-weight: 400;
font-size: 14px;
line-height: 16px;
width: 14.72%;
}
&__cart{
width: 7.78%;
margin-left: 55px;
}
}
}
&__bottom-wrapper{
border-top: 1px solid var(--grey2);
&-content{
width: 84.38%;
margin: 0 auto;
padding: 14px 0;
&__links-wrapper{
display: flex;
list-style-type: none;
padding: 0;
margin: 0;
&__link{
text-decoration: none;
margin-right: 55px;
&-content{
font-family: var(--font-roboto);
color: var(--white1);
text-transform: uppercase;
font-weight: 500;
font-size: 14px;
line-height: 16px;
}
}
}
}
}
}

View File

@ -0,0 +1,12 @@
:root{
--font-roboto: 'Roboto', sans-serif;
--white1: #ffffff;
--white2: #f2f2f2;
--black1: #000000;
--black2: #303030;
--grey1: #c6c6c6;
--grey2: #c4c4c4;
}