diff --git a/.github/Desktop.gif b/.github/Desktop.gif new file mode 100644 index 0000000..e410d0c Binary files /dev/null and b/.github/Desktop.gif differ diff --git a/.github/Mobile.gif b/.github/Mobile.gif new file mode 100644 index 0000000..28bd25f Binary files /dev/null and b/.github/Mobile.gif differ diff --git a/README.md b/README.md index a3b1d39..5ad204a 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,74 @@ -# Responsive Halloween Website 🎃 -## [Watch it on youtube](https://youtu.be/lgo1CEPZoxg) -### Responsive Halloween Website 🎃 +# Halloween -- Responsive Halloween Website Using HTML, CSS & JavaScript. -- Contains animations when scrolling. -- It has three color designs (green, red and black) -- Smooth scrolling in each section. -- Developed first with the Mobile First methodology, then for desktop. -- Compatible with all mobile devices and with a beautiful and pleasant user interface. +## 💻 Projeto -Join the channel to see more videos like this. [Bedimcode](https://www.youtube.com/c/Bedimcode) +Halloween foi uma aplicação prática vista por mim em um canal do YouTube que acompanho [Bedimcode](https://www.youtube.com/c/Bedimcode), fiz uma Fork do projeto, a fim de codar junto e personalizar com meu jeitinho. Visite o GitHub do [Bedimcode](https://github.com/bedimcode/responsive-halloween-website). O mesmo é responsivo para as diferentes resoluções. -![halloween](/preview.png) +

(back to top)

+ +## 📢 Visite o site + +[Responsive-halloween-website](https://lobinhodev.github.io/Responsive-website-halloween/). + +

(back to top)

+ +## Pré-requisitos + +- `Git` +- `SASS é opcional` + +## Indicações + +- Clone meu repositório e faça uma Fork + +### Comandos + +| Comando | O que faz? | Observação | +| -------------------------------------------------------------------------- | --------------------- | ------------------------ | +| `git clone https://github.com/lobinhodev/Responsive-halloween-website.git` | Clona meu repositório | **Execute no terminal!** | + +### Desktop + +

+ +

+ +### Mobile + +

+ +

+ +## 🧠 Tecnologias + +Esse projeto foi desenvolvido com as seguintes tecnologias: + +- HTML +- CSS +- JavaScript +- SASS +

(back to top)

+ +Bibliotecas + +- [Google Fonts](https://fonts.google.com/) +- [Swiperjs](https://swiperjs.com) +- [UiGradient](https://uigradients.com) + +

(back to top)

+ +## Referências + +- [W3Schools referência HTML](https://www.w3schools.com/tags/default.asp) +- [W3Schools referência CSS](https://www.w3schools.com/cssref/default.asp) +- [Google Fonts](https://fonts.google.com/) +- [Coolors](https://coolors.co/palettes/trending) +- [Paletton](https://paletton.com/) +- [W3Schools propriedades CSS no DOM](https://www.w3schools.com/jsref/dom_obj_style.asp) +- [MDN lista de eventos](https://developer.mozilla.org/en-US/docs/Web/Events) +- [CSS BEM](https://desenvolvimentoparaweb.com/css/bem/) +

(back to top)

+ +--- + +Feito com ♥ by Lobinhodev 🐺 diff --git a/assets/css/styles.css b/assets/css/styles.css index fc30031..d15871f 100644 --- a/assets/css/styles.css +++ b/assets/css/styles.css @@ -1,1006 +1,1274 @@ -/*=============== GOOGLE FONTS ===============*/ +/* =============== Google Fonts =============== */ @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;900&display=swap'); -/*=============== VARIABLES CSS ===============*/ -:root { - --header-height: 3.5rem; - - /*========== Colors ==========*/ - --hue: 14; - --first-color: hsl(var(--hue), 91%, 54%); - --first-color-alt: hsl(var(--hue), 91%, 50%); - --title-color: hsl(var(--hue), 4%, 100%); - --text-color: hsl(var(--hue), 4%, 85%); - --text-color-light: hsl(var(--hue), 4%, 55%); - - /*Green gradient*/ - --body-color: linear-gradient(90deg, hsl(104, 28%, 40%) 0%, hsl(58, 28%, 40%) 100%); - --container-color: linear-gradient(136deg, hsl(104, 28%, 35%) 0%, hsl(58, 28%, 35%) 100%); - - /*Red gradient*/ - /* --body-color: linear-gradient(90deg, hsl(360, 28%, 40%) 0%, hsl(18, 28%, 40%) 100%); - --container-color: linear-gradient(136deg, hsl(360, 28%, 35%) 0%, hsl(18, 28%, 35%) 100%); */ +/* =============== Font Awesome =============== */ +@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0-2/css/all.min.css'); - /*Black solid*/ - /* --body-color: hsl(30, 8%, 8%); - --container-color: hsl(30, 8%, 10%); */ - - /*========== Font and typography ==========*/ - --body-font: 'Poppins', sans-serif; - --biggest-font-size: 2rem; - --h1-font-size: 1.5rem; - --h2-font-size: 1.25rem; - --h3-font-size: 1rem; - --normal-font-size: .938rem; - --small-font-size: .813rem; - --smaller-font-size: .75rem; - - /*========== Font weight ==========*/ - --font-medium: 500; - --font-semi-bold: 600; - --font-black: 900; - - /*========== Margenes Bottom ==========*/ - --mb-0-25: .25rem; - --mb-0-5: .5rem; - --mb-0-75: .75rem; - --mb-1: 1rem; - --mb-1-5: 1.5rem; - --mb-2: 2rem; - --mb-2-5: 2.5rem; - - /*========== z index ==========*/ - --z-tooltip: 10; - --z-fixed: 100; -} - -/* Responsive typography */ -@media screen and (min-width: 992px) { - :root { - --biggest-font-size: 4rem; - --h1-font-size: 2.25rem; - --h2-font-size: 1.5rem; - --h3-font-size: 1.25rem; - --normal-font-size: 1rem; - --small-font-size: .875rem; - --smaller-font-size: .813rem; - } +/* =============== Base =============== */ +* { + box-sizing: border-box; + padding: 0; + margin: 0; } -/*=============== BASE ===============*/ -*{ - box-sizing: border-box; - padding: 0; - margin: 0; +html { + scroll-behavior: smooth; } -html{ - scroll-behavior: smooth; +body { + margin: var(--header-height) 0 0 0; + font-family: var(--body-font); + font-size: var(--normal-font-size); + background: var(--body-color); + color: var(--text-color); } -body{ - margin: var(--header-height) 0 0 0; - font-family: var(--body-font); - font-size: var(--normal-font-size); - background: var(--body-color); - color: var(--text-color); +h1, +h2, +h3, +h4 { + color: var(--title-color); + font-weight: var(--font-semi-bold); } -h1,h2,h3,h4{ - color: var(--title-color); - font-weight: var(--font-semi-bold); +ul { + list-style: none; } -ul{ - list-style: none; +a { + text-decoration: none; } -a{ - text-decoration: none; +img { + max-width: 100%; + height: auto; } -img{ - max-width: 100%; - height: auto; +button, +input { + border: none; + outline: none; } -button, -input{ - border: none; - outline: none; +button { + cursor: pointer; + font-family: var(--body-font); + font-size: var(--normal-font-size); } -button{ - cursor: pointer; - font-family: var(--body-font); - font-size: var(--normal-font-size); +/* =============== VARIABLES CSS =============== */ +:root { + /* ========= Header ========== */ + --header-height: 3.5rem; + + /* ========= Color ========== */ + --hue: 14; + --first-color: hsl(var(--hue), 91%, 54%); + --first-color-alt: hsl(var(--hue), 91%, 50%); + --title-color: hsl(var(--hue), 4%, 100%); + --text-color: hsl(var(--hue), 4%, 85%); + --text-color-light: hsl(var(--hue), 4%, 55%); + --toggle-color: #f5af19; + + /*Orange-Violet gradient*/ + --body-color: linear-gradient(90deg, #f12711 0%, #f5af19 110%); + --container-color: linear-gradient(136deg, #f12711 0%, #f5af19 100%); + + /*Red gradient*/ + /* --body-color: linear-gradient(90deg, hsl(360, 28%, 40%) 0%, hsl(18, 28%, 40%) 100%); + --container-color: linear-gradient(136deg, hsl(360, 28%, 35%) 0%, hsl(18, 28%, 35%) 100%); */ + + /*Black solid*/ + /* --body-color: hsl(30, 8%, 8%); + --container-color: hsl(30, 8%, 10%); */ + + /* --body-color: linear-gradient( + 90deg, + hsl(104, 28%, 40%) 0%, + hsl(58, 28%, 40%) 100% + ); + --container-color: linear-gradient( + 136deg, + hsl(104, 28%, 35%) 0%, + hsl(58, 28%, 35%) 100% + ); */ + + /*========== Font and typography ==========*/ + --body-font: 'Poppins', sans-serif; + --biggest-font-size: 2rem; + --h1-font-size: 1.5rem; + --h2-font-size: 1.25rem; + --h3-font-size: 1rem; + --normal-font-size: 0.938rem; + --small-font-size: 0.813rem; + --smaller-font-size: 0.75rem; + + /*========== Font weight ==========*/ + --font-medium: 500; + --font-semi-bold: 600; + --font-black: 900; + + /*========== Margenes Bottom ==========*/ + --mb-0-25: 0.25rem; + --mb-0-5: 0.5rem; + --mb-0-75: 0.75rem; + --mb-1: 1rem; + --mb-1-5: 1.5rem; + --mb-2: 2rem; + --mb-2-5: 2.5rem; + + /* ========== Transition ========== */ + --transition-general: all 0.2s linear; + --transition-items: all 0.4s linear; + + /* ========== z index ========== */ + --z-tooltip: 10; + --z-fixed: 100; +} + +/*=============== Responsive typography ===============*/ + +/*========== Media typography ==========*/ +@media screen and (min-width: 992px) { + :root { + --biggest-font-size: 4rem; + --h1-font-size: 2.25rem; + --h2-font-size: 1.5rem; + --h3-font-size: 1.25rem; + --normal-font-size: 1rem; + --small-font-size: 0.875rem; + --smaller-font-size: 0.813rem; + } +} + +/*========== Media Dark - Light ==========*/ +/* @media (prefers-color-scheme: light) { + :root { + color-scheme: light; + } +} */ + +/* @media (prefers-color-scheme: dark) { + :root { + color-scheme: dark; + --hue: 14; + --first-color: hsl(var(--hue), 91%, 54%); + --first-color-alt: hsl(var(--hue), 91%, 50%); + --title-color: hsl(var(--hue), 4%, 100%); + --text-color: hsl(var(--hue), 4%, 85%); + --text-color-light: hsl(var(--hue), 4%, 55%); + + --body-color: hsl(30, 8%, 8%); + --container-color: hsl(30, 8%, 10%); + } +} */ + +body.active { + --hue: 14; + --first-color: #59ca0d; + --first-color-alt: #68ff0d; + --title-color: #59ca0d; + --text-span-color: #fff; + --text-color-light: #fff; + --text-color: hsl(var(--hue), 4%, 85%); + --text-color-light: hsl(var(--hue), 4%, 55%); + --bg-color: #171717; + --body-color: #171717; + --card-color: #2f2c2c; + --growth-color: #5d20cf; + --wrapper-color: #2e1f3f; + --button-color: #8a52f3; + --button-dark-color: #58329e; + --toggle-color: #68ff04; + --text-color: #fff; + + --body-color: hsl(30, 8%, 8%); + --container-color: hsl(30, 8%, 10%); +} + +/* =============== Components =============== */ +.c-button { + display: inline-block; + background-color: var(--first-color); + color: var(--text-color); + padding: 1rem 1.75rem; + border-radius: 0.5rem; + font-weight: var(--font-medium); + transition: 0.3s; +} + +.c-button:hover { + filter: brightness(1.5); +} + +.c-button__icon { + font-size: 1.25rem; +} + +.c-button--ghost { + border: 2px solid; + background-color: transparent; + border-radius: 3rem; + padding: 0.75rem 1.5rem; } -/*=============== REUSABLE CSS CLASSES ===============*/ -.section{ - padding: 4.5rem 0 2rem; +.c-button--ghost:hover { + background: none; } -.section__title{ - font-size: var(--h2-font-size); - margin-bottom: var(--mb-2); - text-align: center; +.c-button--link { + color: var(--text-color); } -/*=============== LAYOUT ===============*/ -.container{ - max-width: 968px; - margin-left: var(--mb-1-5); - margin-right: var(--mb-1-5); +.c-button--flex { + display: inline-flex; + align-items: center; + column-gap: 0.5rem; } -.grid{ - display: grid; +.c-social-media { + display: flex; + justify-content: flex-start; + align-items: center; + column-gap: 0.5rem; } -.main{ - overflow: hidden; /*For animation*/ +.c-social-media a i { + font-size: 1rem; + transition: var(--transition-general); } -/*=============== HEADER ===============*/ -.header{ - width: 100%; - background: var(--body-color); - position: fixed; - top: 0; - left: 0; - z-index: var(--z-fixed); +.c-social-media a i:hover { + filter: brightness(0.1); + transform: translateY(-10px); } -/*=============== NAV ===============*/ -.nav{ - height: var(--header-height); - display: flex; - justify-content: space-between; - align-items: center; +.c-logo { + display: flex; + align-items: center; + column-gap: 0.5rem; + font-weight: var(--font-medium); + color: var(--title-color); } -.nav__logo{ - display: flex; - align-items: center; - column-gap: .5rem; - font-weight: var(--font-medium); +/* =============== REUSABLE CSS CLASSES =============== */ +.section { + padding: 4.5rem 0 2rem; } -.nav__logo-img{ - width: 1.25rem; +.section__title { + font-size: var(--h2-font-size); + margin-bottom: var(--mb-2); + text-align: center; } -.nav__link, -.nav__logo, -.nav__toggle, -.nav__close{ - color: var(--title-color); +/* =============== LAYOUT =============== */ +.container { + max-width: 968px; + margin-left: var(--mb-1-5); + margin-right: var(--mb-1-5); } -.nav__toggle{ - font-size: 1.25rem; - cursor: pointer; +.grid { + display: grid; } -@media screen and (max-width: 767px){ - .nav__menu{ - position: fixed; +.main { + overflow: hidden; /*For animation*/ +} + +/* =============== Header =============== */ +.l-header { width: 100%; - background: var(--container-color); - top: -150%; + background: var(--body-color); + position: fixed; + top: 0; left: 0; - padding: 3.5rem 0; - transition: .4s; + padding: 0.5rem; z-index: var(--z-fixed); - border-radius: 0 0 1.5rem 1.5rem; - } } -.nav__img{ - width: 100px; - position: absolute; - top: 0; - left: 0; +/* =============== Navigation =============== */ +.l-nav { + height: var(--header-height); + display: flex; + justify-content: space-between; + align-items: center; } -.nav__close{ - font-size: 1.8rem; - position: absolute; - top: .5rem; - right: .7rem; - cursor: pointer; +.nav__logo { + display: flex; + align-items: center; + column-gap: 0.5rem; + font-weight: var(--font-medium); } -.nav__list{ - display: flex; - flex-direction: column; - align-items: center; - row-gap: 1.5rem; +.nav__logo-img { + width: 1.25rem; } -.nav__link{ - text-transform: uppercase; - font-weight: var(--font-black); - transition: .4s; +.nav__link, +.nav__logo, +.nav__toggle, +.nav__close { + color: var(--title-color); } -.nav__link:hover{ - color: var(--text-color); +/* ========= Icons ========= */ +.nav__toggle, +.nav__close, +#theme-btn { + font-size: 1.5rem; + cursor: pointer; + position: absolute; + transition: var(--transition-general); + color: var(--title-color); } -/* Show menu */ -.show-menu{ - top: 0; +.nav__toggle:hover, +.nav__close:hover, +#theme-btn:hover, +#theme-btn.fa-sun:hover { + filter: brightness(1.2); + transform: scale(1.2); } -/* Change background header */ -.scroll-header{ - background: var(--container-color); +.nav__toggle { + top: 1.5rem; + right: 1rem; } -/* Active link */ -.active-link{ - position: relative; +.nav__close { + font-size: 2rem; + top: 1rem; + right: 1rem; } -.active-link::before{ - content: ''; - position: absolute; - bottom: -.75rem; - left: 45%; - width: 5px; - height: 5px; - background-color: var(--title-color); - border-radius: 50%; +#theme-btn { + top: 1.5rem; + right: 3.5rem; } -/*=============== HOME ===============*/ -.home__content{ - row-gap: 1rem; +.nav__toggle, +#theme-btn.fa-sun { + transform: rotate(180deg); +} + +/* ========= Menu ======== */ +@media screen and (max-width: 767px) { + .nav__menu { + position: fixed; + width: 100%; + background: var(--container-color); + top: -150%; + left: 0; + padding: 3.5rem 0; + transition: 0.4s; + z-index: var(--z-fixed); + border-radius: 0 0 1.5rem 1.5rem; + } +} + +.nav__img { + width: 120px; + position: absolute; + top: -10px; + left: 0; + animation: spiderMove 1s infinite alternate-reverse; } -.home__group{ - display: grid; - position: relative; - padding-top: 2rem; +@keyframes spiderMove { + to { + transform: translateY(0); + } + from { + transform: translateY(10px); + } } -.home__img{ - height: 250px; - justify-self: center; +.nav__list { + display: flex; + flex-direction: column; + align-items: center; + row-gap: 1.5rem; } -.home__indicator{ - width: 8px; - height: 8px; - background-color: var(--title-color); - border-radius: 50%; - position: absolute; - top: 7rem; - right: 2rem; +.nav__link { + text-transform: uppercase; + font-weight: var(--font-black); + transition: all 0.2s linear; } -.home__indicator::after{ - content: ''; - position: absolute; - width: 1px; - height: 48px; - background-color: var(--title-color); - top: -3rem; - right: 45%; +.nav__link:hover { + color: var(--text-color); } -.home__details-img{ - position: absolute; - right: .5rem; +/* ===== Show menu ===== */ +.show-menu { + top: 0; } -.home__details-title, -.home__details-subtitle{ - display: block; - font-size: var(--small-font-size); - text-align: right; +/* ===== Change background header ===== */ +.scroll-header { + background: var(--container-color); + box-shadow: 10px 10px 100px var(--toggle-color); +} + +/* ===== Active link ===== */ +.active-link { + position: relative; + width: 0; } -.home__subtitle{ - font-size: var(--h3-font-size); - text-transform: uppercase; - margin-bottom: var(--mb-1); +.active-link::before { + content: ''; + position: absolute; + bottom: -0.75rem; + left: 0; + /* left: 45%; */ + width: 50%; + height: 5px; + background-color: var(--title-color); + transition: width 0.2s; /* segredo para fazer crescer */ + + /* border-radius: 50%; */ } -.home__title{ - font-size: var(--biggest-font-size); - font-weight: var(--font-black); - line-height: 109%; - margin-bottom: var(--mb-1); +.active-link:hover::after, +.active-link:hover::before { + width: 100%; } -.home__description{ - margin-bottom: var(--mb-1); +/* Scroll indicator */ +.scroll-indicator { + position: absolute; + top: 99%; + left: 0; + height: 0.3rem; + background: var(--toggle-color); + /* z-index: 222; */ } -.home__buttons{ - display: flex; - justify-content: space-between; +/*=============== HOME ===============*/ +.home__content { + row-gap: 1rem; } -/* Swiper Class */ -.swiper-pagination{ - position: initial; - margin-top: var(--mb-1); +.home__group { + display: grid; + position: relative; + padding-top: 2rem; +} + +.home__img { + height: 15rem; + justify-self: center; + animation: pulseImage 1s infinite alternate-reverse; +} + +@keyframes pulseImage { + to { + transform: scale(1); + } + + from { + transform: scale(1.1); + } +} + +.home__indicator { + width: 8px; + height: 8px; + background-color: var(--title-color); + border-radius: 50%; + position: absolute; + top: 7rem; + right: 2rem; +} + +.home__indicator::after { + content: ''; + position: absolute; + width: 1px; + height: 48px; + background-color: var(--title-color); + top: -3rem; + right: 45%; } -.swiper-pagination-bullet{ - width: 5px; - height: 5px; - background-color: var(--title-color); - opacity: 1; +.home__details-img { + position: absolute; + right: 0.5rem; } -.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{ - margin: 0 .5rem; -} +.home__details-title, +.home__details-subtitle { + display: block; + font-size: var(--small-font-size); + text-align: right; +} + +.home__subtitle { + font-size: var(--h3-font-size); + text-transform: uppercase; + margin-bottom: var(--mb-1); +} -.swiper-pagination-bullet-active{ - width: 1.5rem; - height: 5px; - border-radius: .5rem; +.home__title { + font-size: var(--biggest-font-size); + font-weight: var(--font-black); + line-height: 109%; + margin-bottom: var(--mb-1); } -/*=============== BUTTONS ===============*/ -.button{ - display: inline-block; - background-color: var(--first-color); - color: var(--title-color); - padding: 1rem 1.75rem; - border-radius: .5rem; - font-weight: var(--font-medium); - transition: .3s; +.home__description { + margin-bottom: var(--mb-1); } -.button:hover{ - background-color: var(--first-color-alt); +.home__buttons { + display: flex; + justify-content: space-between; } -.button__icon{ - font-size: 1.25rem; +/* Swiper Class */ +.swiper, +.swiper-wrapper { + position: relative; + max-width: 100%; } -.button--ghost{ - border: 2px solid; - background-color: transparent; - border-radius: 3rem; - padding: .75rem 1.5rem; +.swiper-slide { + height: auto; + padding: 4rem 1rem; + position: absolute; } -.button--ghost:hover{ - background: none; +.swiper-pagination { + position: initial; + margin-top: var(--mb-1); + width: 3rem; + height: 3rem; } -.button--link{ - color: var(--title-color); +.swiper-pagination-bullet { + width: 5px; + height: 5px; + position: relative; + top: 1rem; + background-color: var(--title-color) !important; + opacity: 1; } -.button--flex{ - display: inline-flex; - align-items: center; - column-gap: .5rem; +.new .swiper-pagination { + width: 1px; + height: 1px; + top: 13rem; +} + +.swiper-pagination-horizontal.swiper-pagination-bullets + .swiper-pagination-bullet { + margin: 0 0.5rem; +} + +.swiper-pagination-bullet-active { + width: 1.5rem; + height: 5px; + border-radius: 0.5rem; +} + +.swiper-button-prev, +.swiper-button-next { + color: var(--title-color) !important; } /*=============== CATEGORY ===============*/ -.category__container{ - grid-template-columns: repeat(2, 1fr); - gap: 1rem 2rem; +.category__container { + grid-template-columns: repeat(2, 1fr); + gap: 1rem 2rem; } -.category__data{ - text-align: center; +.category__data { + text-align: center; } -.category__img{ - width: 120px; - margin-bottom: var(--mb-0-75); - transition: .3s; +.category__img { + width: 120px; + margin-bottom: var(--mb-0-75); + transition: 0.3s; } -.category__title{ - margin-bottom: var(--mb-0-25); +.category__title { + margin-bottom: var(--mb-0-25); } -.category__data:hover .category__img{ - transform: translateY(-.5rem); +.category__data:hover .category__img { + transform: translateY(-0.5rem); } /*=============== ABOUT ===============*/ -.about__container{ - row-gap: 2rem; +.about__container { + row-gap: 2rem; + display: flex; + justify-content: center; + align-items: center; } -.about__data{ - text-align: center; +.about__data { + text-align: center; } -.about__description{ - margin-bottom: var(--mb-2); +.about__description { + margin-bottom: var(--mb-2); } -.about__img{ - width: 200px; - justify-self: center; +.about__img { + width: 200px; + justify-self: center; } /*=============== TRICK OR TREAT ===============*/ -.trick__container{ - grid-template-columns: repeat(2, 1fr); - gap: 1.5rem; - padding-top: 1rem; +.trick__container { + grid-template-columns: repeat(2, 1fr); + gap: 1.5rem; + padding-top: 1rem; } -.trick__content{ - position: relative; - background: var(--container-color); - border-radius: 1rem; - padding: 1.5rem 0 1rem 0; - text-align: center; - overflow: hidden; +.trick__content { + position: relative; + background: var(--container-color); + border-radius: 1rem; + padding: 1.5rem 0 1rem 0; + text-align: center; + overflow: hidden; } -.trick__img{ - width: 90px; - transition: .3s; +.trick__img { + width: 90px; + transition: 0.3s; } .trick__subtitle, -.trick__price{ - display: block; +.trick__price { + display: block; } -.trick__subtitle{ - font-size: var(--smaller-font-size); - margin-bottom: var(--mb-0-5); +.trick__subtitle { + font-size: var(--smaller-font-size); + margin-bottom: var(--mb-0-5); } .trick__title, -.trick__price{ - color: var(--title-color); - font-weight: var(--font-medium); - font-size: var(--normal-font-size); -} - -.trick__button{ - display: inline-flex; - padding: .5rem; - border-radius: .25rem .25rem .75rem .25rem; - position: absolute; - right: -3rem; - bottom: 0; +.trick__price { + color: var(--title-color); + font-weight: var(--font-medium); + font-size: var(--normal-font-size); +} + +.trick__button { + display: inline-flex; + padding: 0.5rem; + border-radius: 0.25rem 0.25rem 0.75rem 0.25rem; + position: absolute; + right: -3rem; + bottom: 0; } -.trick__icon{ - font-size: 1.25rem; - color: var(--title-color); +.trick__icon { + font-size: 1.25rem; + color: var(--bg-color); } -.trick__content:hover .trick__img{ - transform: translateY(-.5rem); +.trick__content:hover .trick__img { + transform: translateY(-0.5rem); } -.trick__content:hover .trick__button{ - right: 0; +.trick__content:hover .trick__button { + right: 0; } /*=============== DISCOUNT ===============*/ -.discount__container{ - background: var(--container-color); - border-radius: 1rem; - padding: 2.5rem 0 1.5rem; - row-gap: .75rem; +.discount__container { + background: var(--container-color); + border-radius: 1rem; + padding: 2.5rem 0 1.5rem; + row-gap: 0.75rem; } -.discount__data{ - text-align: center; +.discount__data { + text-align: center; } -.discount__title{ - font-size: var(--h2-font-size); - margin-bottom: var(--mb-2); +.discount__title { + font-size: var(--h2-font-size); + margin-bottom: var(--mb-2); } -.discount__img{ - width: 200px; - justify-self: center; +.discount__img { + width: 200px; + justify-self: center; } /*=============== NEW ARRIVALS ===============*/ -.new__container{ - padding-top: 1rem; +.new__container { + padding-top: 1rem; } -.new__img{ - width: 120px; - margin-bottom: var(--mb-0-5); - transition: .3s; +.new__img { + width: 120px; + margin-bottom: var(--mb-0-5); + transition: 0.3s; } -.new__content{ - position: relative; - background: var(--container-color); - width: 242px; - padding: 2rem 0 1.5rem 0; - border-radius: .75rem; - text-align: center; - overflow: hidden; +.new__content { + position: relative; + background: var(--container-color); + width: 242px; + padding: 2rem; + border-radius: 0.75rem; + text-align: center; + overflow: hidden; } -.new__tag{ - position: absolute; - top: 8%; - left: 8%; - background-color: var(--first-color); - color: var(--title-color); - font-size: var(--small-font-size); - padding: .25rem .5rem; - border-radius: .25rem; +.new__tag { + position: absolute; + top: 8%; + left: 8%; + background-color: var(--first-color); + color: var(--text-color); + font-size: var(--small-font-size); + padding: 0.25rem 0.5rem; + border-radius: 0.25rem; } -.new__title{ - font-size: var(--normal-font-size); - font-weight: var(--font-medium); +.new__title { + font-size: var(--normal-font-size); + font-weight: var(--font-medium); } -.new__subtitle{ - display: block; - font-size: var(--small-font-size); - margin-bottom: var(--mb-0-5); +.new__subtitle { + display: block; + font-size: var(--small-font-size); + margin-bottom: var(--mb-0-5); } -.new__prices{ - display: inline-flex; - align-items: center; - column-gap: .5rem; +.new__prices { + display: inline-flex; + align-items: center; + column-gap: 0.5rem; } -.new__price{ - font-weight: var(--font-medium); - color: var(--title-color); +.new__price { + font-weight: var(--font-medium); + color: var(--title-color); } -.new__discount{ - color: var(--first-color); - font-size: var(--smaller-font-size); - text-decoration: line-through; - font-weight: var(--font-medium); +.new__discount { + color: var(--first-color); + font-size: var(--smaller-font-size); + text-decoration: line-through; + font-weight: var(--font-medium); } -.new__button{ - display: inline-flex; - padding: .5rem; - border-radius: .25rem .25rem .75rem .25rem; - position: absolute; - bottom: 0; - right: -3rem; +.new__button { + display: inline-flex; + padding: 0.5rem; + border-radius: 0.25rem 0.25rem 0.75rem 0.25rem; + position: absolute; + bottom: 0; + right: -3rem; } -.new__icon{ - font-size: 1.25rem; +.new__icon { + font-size: 1.25rem; } -.new__content:hover .new__img{ - transform: translateY(-.5rem); +.new__content:hover .new__img { + transform: translateY(-0.5rem); } -.new__content:hover .new__button{ - right: 0; +.new__content:hover .new__button { + right: 0; } /*=============== NEWSLETTER ===============*/ -.newsletter__description{ - text-align: center; - margin-bottom: var(--mb-1-5); +.newsletter__description { + text-align: center; + margin-bottom: var(--mb-1-5); } -.newsletter__form{ - background: var(--container-color); - padding: 1rem; - display: flex; - justify-content: space-between; - border-radius: .75rem; +.newsletter__form { + background: var(--container-color); + padding: 1rem; + display: flex; + justify-content: space-between; + border-radius: 0.75rem; } -.newsletter__input{ - width: 70%; - padding: 0 .5rem; - background: none; - color: var(--title-color); +.newsletter__input { + width: 70%; + padding: 0 0.5rem; + background: none; + color: var(--title-color); } -.newsletter__input::placeholder{ - color: var(--text-color); +.newsletter__input::placeholder { + color: var(--text-color); } /*=============== FOOTER ===============*/ -.footer{ - position: relative; - overflow: hidden; +.l-footer { + position: relative; + overflow: hidden; } .footer__img-one, -.footer__img-two{ - position: absolute; - transition: .3s; +.footer__img-two { + position: absolute; + transition: 0.3s; } -.footer__img-one{ - width: 100px; - top: 6rem; - right: -2rem; +.footer__img-one { + width: 100px; + top: 6rem; + right: -2rem; + animation: walkGhostOne 5s linear alternate infinite; } -.footer__img-two{ - width: 150px; - bottom: 4rem; - right: 4rem; +.footer__img-two { + width: 150px; + bottom: 4rem; + right: 4rem; + animation: walkGhostTwo 5s linear alternate infinite; } .footer__img-one:hover, -.footer__img-two:hover{ - transform: translateY(-.5rem); +.footer__img-two:hover { + transform: translateY(-0.5rem); +} + +@keyframes walkGhostOne { + /* 0% { + transform: translate(0);} + 100% { + transform: translate(-300px, 40px); + + } */ + 0% { + transform: translate(-100px, 0); + opacity: 0; + } + + 25% { + transform: translate(-130px, 20px); + } + + 50% { + transform: translate(-160px, 0); + } + + 75% { + transform: translate(-190px, 20px); + } + + 100% { + transform: translate(-210px, 0); + } } -.footer__container{ - row-gap: 2rem; +@keyframes walkGhostTwo { + /* 0% { + transform: translate(0); + } + 100% { + transform: translate(300px, 40px); + } */ + 0% { + transform: translate(100px, 0); + opacity: 0; + } + + 25% { + transform: translate(130px, 20px); + } + + 50% { + transform: translate(160px, 0); + } + + 75% { + transform: translate(190px, 20px); + } + + 100% { + transform: translate(210px, 0); + } } -.footer__logo{ - display: flex; - align-items: center; - column-gap: .5rem; - margin-bottom: var(--mb-1); - font-weight: var(--font-medium); - color: var(--title-color); +.l-footer__container { + row-gap: 2rem; + z-index: 999; } -.footer__logo-img{ - width: 20px; +.footer__logo-img { + width: 20px; } -.footer__description{ - margin-bottom: var(--mb-2-5); +.l-footer__description { + margin-bottom: var(--mb-2-5); + /* margin-top: 1rem; */ } -.footer__social{ - display: flex; - column-gap: .75rem; +footer .c-logo { + margin-bottom: var(--mb-0-25); } -.footer__social-link{ - display: inline-flex; - background: var(--container-color); - padding: .25rem; - border-radius: .25rem; - color: var(--title-color); - font-size: 1rem; +.footer__social-link { + display: inline-flex; + background: var(--container-color); + padding: 0.25rem; + border-radius: 0.25rem; + color: var(--title-color); + font-size: 1rem; } -.footer__social-link:hover{ - background: var(--body-color); +.footer__social-link:hover { + background: var(--body-color); } -.footer__title{ - font-size: var(--h3-font-size); - margin-bottom: var(--mb-1); +.l-footer__title { + font-size: var(--h3-font-size); + margin-bottom: var(--mb-1); } -.footer__links{ - display: grid; - row-gap: .35rem; +.l-footer__links { + display: grid; + row-gap: 0.35rem; } -.footer__link{ - font-size: var(--small-font-size); - color: var(--text-color); - transition: .3s; +.footer__link { + font-size: var(--small-font-size); + color: var(--text-color); + transition: 0.3s; } -.footer__link:hover{ - color: var(--title-color); +.footer__link:hover { + color: var(--title-color); } -.footer__copy{ - display: block; - text-align: center; - font-size: var(--smaller-font-size); - margin-top: 4.5rem; +.l-footer__copy { + display: block; + text-align: center; + font-size: var(--smaller-font-size); + margin-top: 4.5rem; } -/*=============== SCROLL UP ===============*/ -.scrollup{ - position: fixed; - background: var(--container-color); - right: 1rem; - bottom: -20%; - display: inline-flex; - padding: .3rem; - border-radius: .25rem; - z-index: var(--z-tooltip); - opacity: .8; - transition: .4s; +/* =============== Scroll up =============== */ +.scrollup { + position: fixed; + background: var(--container-color); + right: 1rem; + bottom: -20%; + display: inline-flex; + padding: 1rem; + border-radius: 0.25rem; + z-index: var(--z-tooltip); + opacity: 0.8; + transition: 0.4s; + box-shadow: 5px 5px 100px var(--toggle-color); } -.scrollup__icon{ - font-size: 1.25rem; - color: var(--title-color); +.scrollup__icon { + font-size: 1.25rem; + color: var(--title-color); } -.scrollup:hover{ - background: var(--container-color); - opacity: 1; +.scrollup:hover { + background: var(--container-color); + opacity: 1; } /* Show Scroll Up*/ -.show-scroll{ - bottom: 3rem; +.show-scroll { + bottom: 3rem; } /*=============== SCROLL BAR ===============*/ -::-webkit-scrollbar{ - width: 0.6rem; - background: #413e3e; +::-webkit-scrollbar { + width: 0.6rem; + background: #413e3e; } -::-webkit-scrollbar-thumb{ - background: #272525; - border-radius: .5rem; +::-webkit-scrollbar-thumb { + background: #272525; + border-radius: 0.5rem; } /*=============== BREAKPOINTS ===============*/ /* For small devices */ -@media screen and (max-width: 320px){ - .container{ - margin-left: var(--mb-1); - margin-right: var(--mb-1); - } - - .home__img{ - height: 200px; - } - .home__buttons{ - flex-direction: column; - width: max-content; - row-gap: 1rem; - } - - .category__container, - .trick__container{ - grid-template-columns: .8fr; - justify-content: center; - } +@media screen and (max-width: 320px) { + .container { + margin-left: var(--mb-1); + margin-right: var(--mb-1); + } + + .home__img { + height: 200px; + } + .home__buttons { + flex-direction: column; + width: max-content; + row-gap: 1rem; + } + + .category__container, + .trick__container { + grid-template-columns: 0.8fr; + justify-content: center; + } +} + +@media screen and (max-width: 576px) { + .about__container { + flex-direction: column; + } } /* For medium devices */ -@media screen and (min-width: 576px){ - .about__container{ - grid-template-columns: .8fr; - justify-content: center; - } - - .newsletter__container{ - display: grid; - grid-template-columns: .7fr; - justify-content: center; - } - .newsletter__description{ - padding: 0 3rem; - } -} - -@media screen and (min-width: 767px){ - body{ - margin: 0; - } - - .section{ - padding: 7rem 0 2rem; - } - - .nav{ - height: calc(var(--header-height) + 1.5rem); - } - .nav__img, - .nav__close, - .nav__toggle{ - display: none; - } - .nav__list{ - flex-direction: row; - column-gap: 3rem; - } - .nav__link{ - text-transform: initial; - font-weight: initial; - } - - .home__content{ - padding: 8rem 0 2rem; - grid-template-columns: repeat(2, 1fr); - gap: 4rem; - } - .home__img{ - height: 300px; - } - .swiper-pagination{ - margin-top: var(--mb-2); - } - - .category__container{ - grid-template-columns: repeat(3, 200px); - justify-content: center; - } - - .about__container{ - grid-template-columns: repeat(2, 1fr); - align-items: center; - } - .about__title, - .about__data{ - text-align: initial; - } - .about__img{ - width: 250px; - } - - .trick__container{ - grid-template-columns: repeat(3, 200px); - justify-content: center; - gap: 2rem; - } - - .discount__container{ - grid-template-columns: repeat(2, max-content); - justify-content: center; - align-items: center; - column-gap: 3rem; - padding: 3rem 0; - border-radius: 3rem; - } - .discount__img{ - width: 350px; - order: -1; - } - .discount__data{ - padding-right: 6rem; - } - - .newsletter__container{ - grid-template-columns: .5fr; - } - - .footer__container{ - grid-template-columns: repeat(4, 1fr); - justify-items: center; - column-gap: 1rem; - } - .footer__img-two{ - right: initial; - bottom: 0; - left: 15%; - } +@media screen and (min-width: 576px) { + .about__container { + grid-template-columns: 0.8fr; + justify-content: center; + } + + .newsletter__container { + display: grid; + grid-template-columns: 0.7fr; + justify-content: center; + } + .newsletter__description { + padding: 0 3rem; + } +} + +@media screen and (min-width: 767px) { + body { + margin: 0; + } + + .section { + padding: 7rem 0 2rem; + margin-left: var(--mb-1); + margin-right: var(--mb-1); + } + + .nav { + height: calc(var(--header-height) + 1.5rem); + } + .nav__img, + .nav__close, + .nav__toggle { + display: none; + } + .nav__list { + flex-direction: row; + column-gap: 3rem; + } + .nav__link { + text-transform: initial; + font-weight: initial; + } + + .home__content { + padding: 8rem 0 2rem; + grid-template-columns: repeat(2, 1fr); + gap: 4rem; + } + .home__img { + height: 300px; + } + .swiper-pagination { + margin-top: var(--mb-2); + } + + .category__container { + grid-template-columns: repeat(3, 200px); + justify-content: center; + } + + .about__container { + grid-template-columns: repeat(2, 1fr); + align-items: center; + } + .about__title, + .about__data { + text-align: initial; + } + .about__img { + width: 250px; + } + + .trick__container { + grid-template-columns: repeat(3, 200px); + justify-content: center; + gap: 2rem; + } + + .discount__container { + grid-template-columns: repeat(2, max-content); + justify-content: center; + align-items: center; + column-gap: 3rem; + padding: 3rem 0; + border-radius: 3rem; + } + .discount__img { + width: 350px; + order: -1; + } + .discount__data { + padding-right: 6rem; + } + + .new .swiper-pagination { + width: 1px; + height: 1px; + top: 12rem; + } + + .newsletter__container { + grid-template-columns: 0.5fr; + } + + .l-footer__container { + grid-template-columns: repeat(4, 1fr); + justify-items: center; + column-gap: 1rem; + } + .footer__img-two { + right: initial; + bottom: 0; + left: 15%; + } } /* For large devices */ -@media screen and (min-width: 992px){ - .container{ - margin-left: auto; - margin-right: auto; - } - - .section__title{ - font-size: var(--h1-font-size); - margin-bottom: 3rem; - } - - .home__content{ - padding-top: 9rem; - gap: 3rem; - } - .home__group{ - padding-top: 0; - } - .home__img{ - height: 400px; - transform: translateY(-3rem); - } - .home__indicator{ - top: initial; - right: initial; - bottom: 15%; - left: 45%; - } - .home__indicator::after{ - top: 0; - height: 75px; - } - .home__details-img{ - bottom: 0; - right: 58%; - } - .home__title{ - margin-bottom: var(--mb-1-5); - } - .home__description{ - margin-bottom: var(--mb-2-5); - padding-right: 2rem; - } - - .category__container{ - column-gap: 8rem; - } - .category__img{ - width: 200px; - } - - .about__container{ - column-gap: 7rem; - } - .about__img{ - width: 350px; - } - .about__description{ - padding-right: 2rem; - } - - .trick__container{ - gap: 3.5rem; - } - .trick__content{ - border-radius: 1.5rem; - } - .trick__img{ - width: 110px; - } - .trick__title{ - font-size: var(--h3-font-size); - } - - .discount__container{ - column-gap: 7rem; - } - - .new__content{ - width: 310px; - border-radius: 1rem; - padding: 2rem 0; - } - .new__img{ - width: 150px; - } - .new__img, - .new__subtitle{ - margin-bottom: var(--mb-1); - } - .new__title{ - font-size: var(--h3-font-size); - } - - .footer__copy{ - margin-top: 6rem; - } +@media screen and (min-width: 992px) { + .container { + margin-left: auto; + margin-right: auto; + } + + .section__title { + font-size: var(--h1-font-size); + margin-bottom: 3rem; + } + + .home__content { + padding-top: 9rem; + gap: 3rem; + } + .home__group { + padding-top: 0; + } + .home__img { + height: 400px; + transform: translateY(-3rem); + } + .home__indicator { + top: initial; + right: initial; + bottom: 15%; + left: 45%; + } + .home__indicator::after { + top: 0; + height: 75px; + } + .home__details-img { + bottom: 0; + right: 58%; + } + .home__title { + margin-bottom: var(--mb-1-5); + } + .home__description { + margin-bottom: var(--mb-2-5); + padding-right: 2rem; + } + + .category__container { + column-gap: 8rem; + } + .category__img { + width: 200px; + } + + .about__container { + column-gap: 7rem; + } + .about__img { + width: 350px; + } + .about__description { + padding-right: 2rem; + } + + .trick__container { + gap: 3.5rem; + } + .trick__content { + border-radius: 1.5rem; + } + .trick__img { + width: 110px; + } + .trick__title { + font-size: var(--h3-font-size); + } + + .discount__container { + column-gap: 7rem; + } + + .new__content { + width: 310px; + border-radius: 1rem; + padding: 2rem 0; + } + + .new .swiper-pagination { + top: 15.5rem; + } + + .new__img { + width: 150px; + } + .new__img, + .new__subtitle { + margin-bottom: var(--mb-1); + } + .new__title { + font-size: var(--h3-font-size); + } + + .l-footer__copy { + margin-top: 6rem; + } +} + +@media screen and (min-width: 1200px) { + .home__img { + height: 420px; + } + .swiper-pagination { + margin-top: var(--mb-2-5); + } + .footer__img-one { + width: 120px; + } + .footer__img-two { + width: 180px; + top: 30%; + left: -3%; + } } - -@media screen and (min-width: 1200px){ - .home__img{ - height: 420px; - } - .swiper-pagination{ - margin-top: var(--mb-2-5); - } - .footer__img-one{ - width: 120px; - } - .footer__img-two{ - width: 180px; - top: 30%; - left: -3%; - } -} \ No newline at end of file diff --git a/assets/js/main.js b/assets/js/main.js index 6ad8094..79751c3 100644 --- a/assets/js/main.js +++ b/assets/js/main.js @@ -1,99 +1,155 @@ -/*=============== SHOW MENU ===============*/ +/* ==================== Dark Mode ==================== */ +let themeBtn = document.querySelector('#theme-btn') + +themeBtn.onclick = () => { + themeBtn.classList.toggle('fa-sun') + + if (themeBtn.classList.contains('fa-sun')) { + document.body.classList.add('active') + } else { + document.body.classList.remove('active') + } +} + +/* ==================== CHANGE BACKGROUND HEADER ==================== */ +function scrollHeader() { + const header = document.getElementById('header') + // When the scroll is greater than 50 viewport height, add the scroll-header class to the header tag + if (this.scrollY >= 50) header.classList.add('scroll-header') + else header.classList.remove('scroll-header') +} +window.addEventListener('scroll', scrollHeader) + +/* ==================== ScrollIndicator ==================== */ +window.onscroll = () => { + // navToggle.classList.remove('nav-menu') + // navMenu.classList.remove('show-menu') + + let maxHeight = window.document.body.scrollHeight - window.innerHeight + let percentage = (window.scrollY / maxHeight) * 100 + document.querySelector('.l-header .scroll-indicator').style.width = + percentage + '%' +} + +/* ==================== SHOW MENU ==================== */ const navMenu = document.getElementById('nav-menu'), - navToggle = document.getElementById('nav-toggle'), - navClose = document.getElementById('nav-close') + navToggle = document.getElementById('nav-toggle'), + navClose = document.getElementById('nav-close') -/*===== MENU SHOW =====*/ +/* ========== MENU SHOW ========== */ /* Validate if constant exists */ -if(navToggle){ - navToggle.addEventListener('click', () =>{ +if (navToggle) { + navToggle.addEventListener('click', () => { navMenu.classList.add('show-menu') }) -} +} else navClose +navClose.addEventListener('click', () => { + navMenu.classList.remove('show-menu') +}) -/*===== MENU HIDDEN =====*/ +/* ========== MENU HIDDEN ========== */ /* Validate if constant exists */ -if(navClose){ - navClose.addEventListener('click', () =>{ - navMenu.classList.remove('show-menu') - }) -} +// if (navClose) { +// navClose.addEventListener('click', () => { +// navMenu.classList.remove('show-menu') +// }) +// } -/*=============== REMOVE MENU MOBILE ===============*/ +/* ==================== REMOVE MENU MOBILE ==================== */ const navLink = document.querySelectorAll('.nav__link') -function linkAction(){ +function linkAction() { const navMenu = document.getElementById('nav-menu') // When we click on each nav__link, we remove the show-menu class navMenu.classList.remove('show-menu') } -navLink.forEach(n => n.addEventListener('click', linkAction)) - -/*=============== HOME SWIPER ===============*/ -let homeSwiper = new Swiper(".home-swiper", { - spaceBetween: 30, - loop: 'true', - - pagination: { - el: ".swiper-pagination", - clickable: true, - }, -}) - -/*=============== CHANGE BACKGROUND HEADER ===============*/ -function scrollHeader(){ - const header = document.getElementById('header') - // When the scroll is greater than 50 viewport height, add the scroll-header class to the header tag - if(this.scrollY >= 50) header.classList.add('scroll-header'); else header.classList.remove('scroll-header') -} -window.addEventListener('scroll', scrollHeader) +navLink.forEach((n) => n.addEventListener('click', linkAction)) -/*=============== NEW SWIPER ===============*/ -let newSwiper = new Swiper(".new-swiper", { - centeredSlides: true, - slidesPerView: "auto", - loop: 'true', - spaceBetween: 16, -}); - -/*=============== SCROLL SECTIONS ACTIVE LINK ===============*/ +/* =============== SCROLL SECTIONS ACTIVE LINK =============== */ const sections = document.querySelectorAll('section[id]') -function scrollActive(){ +function scrollActive() { const scrollY = window.pageYOffset - sections.forEach(current =>{ + sections.forEach((current) => { const sectionHeight = current.offsetHeight, - sectionTop = current.offsetTop - 58, - sectionId = current.getAttribute('id') + sectionTop = current.offsetTop - 58, + sectionId = current.getAttribute('id') - if(scrollY > sectionTop && scrollY <= sectionTop + sectionHeight){ - document.querySelector('.nav__menu a[href*=' + sectionId + ']').classList.add('active-link') - }else{ - document.querySelector('.nav__menu a[href*=' + sectionId + ']').classList.remove('active-link') + if (scrollY > sectionTop && scrollY <= sectionTop + sectionHeight) { + document + .querySelector('.nav__menu a[href*=' + sectionId + ']') + .classList.add('active-link') + } else { + document + .querySelector('.nav__menu a[href*=' + sectionId + ']') + .classList.remove('active-link') } }) } window.addEventListener('scroll', scrollActive) -/*=============== SHOW SCROLL UP ===============*/ -function scrollUp(){ - const scrollUp = document.getElementById('scroll-up'); +/* =============== SHOW SCROLL UP =============== */ +function scrollUp() { + const scrollUp = document.getElementById('scroll-up') // When the scroll is higher than 460 viewport height, add the show-scroll class to the a tag with the scroll-top class - if(this.scrollY >= 460) scrollUp.classList.add('show-scroll'); else scrollUp.classList.remove('show-scroll') + if (this.scrollY >= 460) scrollUp.classList.add('show-scroll') + else scrollUp.classList.remove('show-scroll') } window.addEventListener('scroll', scrollUp) +/* ==================== HOME SWIPER ==================== */ +let homeSwiper = new Swiper('.home-swiper', { + spaceBetween: 30, + loop: 'true', + + pagination: { + el: '.swiper-pagination', + clickable: true + } +}) + +/*=============== NEW SWIPER ===============*/ +// let newSwiper = new Swiper('.new-swiper', { +// centeredSlides: true, +// slidesPerView: 'auto', +// loop: 'true', +// spaceBetween: 16 +// }) + +/* ==================== Slider swiper ==================== */ +const swiper = new Swiper('.swiper', { + slidesPerView: 'auto', + spaceBetween: 10, + pagination: { + el: '.swiper-pagination', + type: 'bullets' + }, + autoplay: { + delay: 1500 + }, + // Navigation arrows + navigation: { + nextEl: '.swiper-button-next', + prevEl: '.swiper-button-prev' + }, + mousewheel: true, + keyboard: true, + grabCursor: true +}) + /*=============== SCROLL REVEAL ANIMATION ===============*/ const sr = ScrollReveal({ origin: 'top', distance: '60px', duration: 2500, - delay: 400, + delay: 400 // reset: true }) sr.reveal(`.home-swiper, .new-swiper, .newsletter__container`) -sr.reveal(`.category__data, .trick__content, .footer__content`,{interval: 100}) -sr.reveal(`.about__data, .discount__img`,{origin: 'left'}) -sr.reveal(`.about__img, .discount__data`,{origin: 'right'}) +sr.reveal(`.category__data, .trick__content, .footer__content`, { + interval: 100 +}) +sr.reveal(`.about__data, .discount__img`, { origin: 'left' }) +sr.reveal(`.about__img, .discount__data`, { origin: 'right' }) diff --git a/index.html b/index.html index d0fc434..8e3ea9c 100644 --- a/index.html +++ b/index.html @@ -1,36 +1,54 @@ - + - - + + - + - - - - - - - + + + + + + + + Responsive Halloween Website -