FEWD-CTEC3905/css/styles.css

723 lines
14 KiB
CSS
Raw Normal View History

2024-02-04 16:29:54 +00:00
/* MOBILE AND GLOBAL STYLES */
/* applies to screens smaller than 500px (first breakpoint) */
/* and above unless overwritten below */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..600&display=swap');
:root {
--bgColor: #ffffff;
--normal: #999999;
--fighting: #C03028;
--flying: #A890F0;
--poison: #A040A0;
--ground: #E0C068;
--rock: #B8A038;
--bug: #A8B820;
--ghost: #705898;
--steel: #B8B8D0;
--fire: #F08030;
--water: #6890F0;
--grass: #78C850;
--electric: #F8D030;
--psychic: #F85888;
--ice: #98D8D8;
--dragon: #7038F8;
--dark: #41314e;
--fairy: #EE99AC;
}
2024-02-24 00:07:38 +00:00
2024-02-04 16:29:54 +00:00
body {
font-family: 'Outfit', sans-serif;
font-size: 1.5em;
margin: 0;
padding: 0;
box-sizing: border-box;
}
2024-02-24 00:07:38 +00:00
/* LANDING STYLES */
@keyframes fadeImage {
0% {
opacity: 1;
}
50% {
opacity: 0;
}
100% {
opacity: 1;
}
}
2024-02-04 16:29:54 +00:00
2024-02-23 23:56:16 +00:00
#landing {
width: 100vw;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
background-size: cover;
transition: opacity 1s forwards; /*transition does not work for images*/
position: relative;
}
2024-02-04 16:29:54 +00:00
2024-02-23 23:56:16 +00:00
#landing #background {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -2;
}
2024-02-23 23:56:16 +00:00
#landing #background-transition {
display: none;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
opacity: 0;
transition: opacity 1s;
}
h1 {
font-size: 10vw;
2024-03-08 19:21:51 +00:00
font-weight: 600;
text-align: center;
user-select: none;
}
#titleBanner {
padding-left: 5%;
padding-right: 5%;
transition: color 1s, background-color 1s, border-radius 0.5s ease;
}
#titleBanner:hover {
border-radius: 1em;
}
.black {
background-color: #000; /* Reference[0] https://www.w3schools.com/howto/howto_css_cutout_text.asp */
color: #fff;
mix-blend-mode: multiply;
}
.white {
background-color: #fff;
color: #000;
mix-blend-mode: lighten;
}
#colorSelector {
display: flex;
2024-02-23 23:56:16 +00:00
position: absolute;
top: 0;
right: 0;
margin: 10px;
align-items: center;
padding: 10px;
background-color: #ffffff50;
border-radius: 10px;
}
#colorSelector input {
margin-left: 10px;
}
#colorSelector label {
font-size: 1.5em;
}
2024-02-04 16:29:54 +00:00
/* BELOW LANDING STYLES */
#below-landing {
background-color: #101010;
overflow: auto;
color: white;
padding: 50px;
}
p {
font-weight: 200;
}
2024-03-08 19:21:51 +00:00
h2 {
font-size: 3em;
font-weight: 400;
margin: 0;
text-decoration: underline;
text-decoration-color: var(--bgColor);
2024-03-08 19:21:51 +00:00
}
h3 {
font-size: 1.5em;
font-weight: 300;
margin: 0;
}
.features {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
#features-intro p {
2024-03-08 19:24:03 +00:00
text-align: center;
}
#table-heading {
margin-bottom: 25px;
}
.feature-showcase {
display: flex;
flex-direction: column;
border-radius: 40px;
background-color: #181818;
}
.feature-showcase-item {
padding: 30px;
border-bottom: 1px solid var(--bgColor);
}
#modern-css {
border-bottom: none;
}
/* POKEDEX STYLES */
#pokedex {
max-width: 1300px;
margin: auto;
margin-bottom: 50px;
}
#generation-selector, #type-selector {
overflow-x: auto;
}
#pokedex h2 {
text-align: center;
}
#generation-selector {
display: flex;
}
#generation-selector input {
display: none;
}
#generation-selector label {
display: inline-block;
padding: 10px;
margin: 10px;
min-height: 40px;
min-width: 40px;
text-align: center;
text-shadow: black 0px 0px 3px;
line-height: 40px;
border-radius: 30px;
background-color: #202020;
color: white;
cursor: pointer;
transition: background-color 0.5s;
}
#generation-selector label:hover {
background-color: #303030;
}
#generation-selector input:checked + label {
background-color: var(--bgColor);
}
#type-selector {
display: flex;
}
#type-selector input {
display: none;
}
#type-selector label {
display: inline-block;
padding: 10px;
margin: 10px;
height: 40px;
width: 40px;
text-align: center;
line-height: 40px;
border-radius: 30px;
background-color: #202020;
color: white;
cursor: pointer;
transition: background-color 0.5s;
}
#type-selector label img {
width: 40px;
height: 40px;
font-size: 10px;
}
#type-selector label:hover {
background-color: #303030;
}
#type-selector input:checked + label {
background-color: var(--bgColor);
}
#normal:checked + label {
background-color: var(--normal) !important;
}
#fighting:checked + label {
background-color: var(--fighting) !important;
}
#flying:checked + label {
background-color: var(--flying) !important;
}
#poison:checked + label {
background-color: var(--poison) !important;
}
#ground:checked + label {
background-color: var(--ground) !important;
}
#rock:checked + label {
background-color: var(--rock) !important;
}
#bug:checked + label {
background-color: var(--bug) !important;
}
#ghost:checked + label {
background-color: var(--ghost) !important;
}
#steel:checked + label {
background-color: var(--steel) !important;
}
#fire:checked + label {
background-color: var(--fire) !important;
}
#water:checked + label {
background-color: var(--water) !important;
}
#grass:checked + label {
background-color: var(--grass) !important;
}
#electric:checked + label {
background-color: var(--electric) !important;
}
#psychic:checked + label {
background-color: var(--psychic) !important;
}
#ice:checked + label {
background-color: var(--ice) !important;
}
#dragon:checked + label {
background-color: var(--dragon) !important;
}
#dark:checked + label {
background-color: var(--dark) !important;
}
#fairy:checked + label {
background-color: var(--fairy) !important;
}
#pokemon-container .normal-primary-type {
background-color: var(--normal) !important;
}
#pokemon-container .normal-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--normal) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .fighting-primary-type {
background-color: var(--fighting) !important;
}
#pokemon-container .fighting-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--fighting) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .flying-primary-type {
background-color: var(--flying) !important;
}
#pokemon-container .flying-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--flying) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .poison-primary-type {
background-color: var(--poison) !important;
}
#pokemon-container .poison-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--poison) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .ground-primary-type {
background-color: var(--ground) !important;
}
#pokemon-container .ground-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--ground) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .rock-primary-type {
background-color: var(--rock) !important;
}
#pokemon-container .rock-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--rock) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .bug-primary-type {
background-color: var(--bug) !important;
}
#pokemon-container .bug-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--bug) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .ghost-primary-type {
background-color: var(--ghost) !important;
}
#pokemon-container .ghost-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--ghost) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .steel-primary-type {
background-color: var(--steel) !important;
}
#pokemon-container .steel-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--steel) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .fire-primary-type {
background-color: var(--fire) !important;
}
#pokemon-container .fire-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--fire) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .water-primary-type {
background-color: var(--water) !important;
}
#pokemon-container .water-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--water) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .grass-primary-type {
background-color: var(--grass) !important;
}
#pokemon-container .grass-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--grass) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .electric-primary-type {
background-color: var(--electric) !important;
}
#pokemon-container .electric-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--electric) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .psychic-primary-type {
background-color: var(--psychic) !important;
}
#pokemon-container .psychic-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--psychic) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .ice-primary-type {
background-color: var(--ice) !important;
}
#pokemon-container .ice-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--ice) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .dragon-primary-type {
background-color: var(--dragon) !important;
}
#pokemon-container .dragon-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--dragon) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .dark-primary-type {
background-color: var(--dark) !important;
}
#pokemon-container .dark-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--dark) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container .fairy-primary-type {
background-color: var(--fairy) !important;
}
#pokemon-container .fairy-secondary-type {
box-shadow: inset 0px -150px 100px -100px var(--fairy) , 0px 0px 0px 0px transparent !important;
}
#pokemon-container {
display: flex;
flex-direction: row;
overflow-x: auto;
overflow-y: hidden;
width: 100%;
height: 220px;
}
.pokemon-card {
height: 200px;
min-width: 300px;
background-color: #444;
margin: 10px;
border-radius: 40px;
overflow: hidden;
}
.pokemon-card img {
position: relative;
top: -120px;
left: 100px;
height: 192px;
width: 192px;
margin: 10px;
image-rendering: pixelated;
}
.pokemon-card .pokemon-name {
font-weight: 500;
font-size: 1.15em;
position: relative;
margin: 0;
top: 15px;
left: 15px;
z-index: 1;
text-shadow: black 1px 1px 3px;
}
.pokemon-card .pokemon-id {
font-weight: 100;
font-size: 3.5em;
position: relative;
margin: 0;
top: 15px;
left: 15px;
z-index: 0;
text-shadow: #0008 1px 1px 2px;
}
2024-02-24 00:07:38 +00:00
/* CAROUSEL STYLES */
2024-02-23 23:56:16 +00:00
#carousel {
2024-02-24 00:07:38 +00:00
height: 100vh;
background-color: #101010;
2024-02-23 23:56:16 +00:00
position: relative;
display: flex;
}
#carousel-container {
display: flex;
2024-02-24 00:07:38 +00:00
flex-direction: column;
2024-02-23 23:56:16 +00:00
width: 100%;
padding: 50px 0px;
2024-02-23 23:56:16 +00:00
}
.carousel-item {
position: relative;
display:block;
2024-02-24 15:08:09 +00:00
height: 100px;
2024-02-24 15:12:09 +00:00
width: calc(100% - 34px);
2024-02-24 15:08:09 +00:00
min-height: 100px;
2024-02-24 00:07:38 +00:00
margin: 12px;
border-radius: 52px;
border: 3px solid var(--bgColor);
2024-02-23 23:56:16 +00:00
overflow: hidden;
2024-02-24 00:07:38 +00:00
transition: width 1s ease, height 1s ease;
2024-02-23 23:56:16 +00:00
}
.carousel-item .carousel-id {
position: absolute;
bottom: 0;
left: 0;
2024-02-24 00:12:26 +00:00
transform: translate(10px, 5px);
2024-02-24 15:08:09 +00:00
width: 70px;
height: 70px;
2024-02-23 23:56:16 +00:00
background-color: #202020;
2024-02-24 15:08:09 +00:00
border-radius: 40px;
2024-02-23 23:56:16 +00:00
margin: 0;
margin-bottom: 15px;
border: 3px solid var(--bgColor);
2024-02-23 23:56:16 +00:00
text-shadow: black 5px 5px 5px;
user-select: none;
2024-02-23 23:56:16 +00:00
}
.carousel-item .carousel-title {
position: absolute;
bottom: 0;
left: 0;
2024-02-24 15:08:09 +00:00
transform: translate(100px, -35px);
2024-02-23 23:56:16 +00:00
color: white;
2024-02-24 15:08:09 +00:00
font-size: 25px;
font-weight: 550;
2024-02-23 23:56:16 +00:00
margin: 0;
text-shadow: rgb(0, 0, 0) 3px 3px 3px;
width: 500px;
2024-02-23 23:56:16 +00:00
}
#carousel-container .active {
2024-02-24 00:07:38 +00:00
height:100%;
2024-02-23 23:56:16 +00:00
}
#carousel-container #carousel-1 {
background-image: linear-gradient(to top, #0008, #0000), url("/assets/photos/code-1839406_1920.jpg");
2024-02-23 23:56:16 +00:00
background-size: cover;
background-position: center;
}
#carousel-container #carousel-2 {
background-image: linear-gradient(to top, #000a, #0000), url("/assets/photos/software-3682509_1920.jpg");
2024-02-23 23:56:16 +00:00
background-size: cover;
background-position: center;
}
#carousel-container #carousel-3 {
background-image: linear-gradient(to top, #000a, #0000), url("/assets/photos/keyboard-5466431_1920.jpg");
2024-02-23 23:56:16 +00:00
background-size: cover;
background-position: center;
}
2024-02-04 16:29:54 +00:00
/* TABLET STYLES */
@media screen and (min-width: 500px) {
/* applies to screens wider than 499px */
2024-02-04 16:29:54 +00:00
}
/* DESKTOP STYLES */
@media screen and (min-width: 1000px) {
/* applies to screens wider than 999px */
2024-02-24 00:07:38 +00:00
#carousel {
height: 910px;
}
#carousel-container {
display: flex;
flex-direction: row;
}
.carousel-item {
min-width: 200px;
height: 800px;
width: 150px;
min-width: 150px;
border-radius: 74px;
2024-02-24 15:08:09 +00:00
}
.carousel-item .carousel-id {
width: 120px;
height: 120px;
line-height: 120px;
font-size: 100px;
border-radius: 65px;
2024-02-24 00:07:38 +00:00
}
#carousel-container .active {
width:100%;
height: 800px;
2024-02-24 00:07:38 +00:00
}
2024-02-04 16:29:54 +00:00
2024-02-24 15:08:09 +00:00
.carousel-item .carousel-title {
transform: translate(180px, -50px);
font-size: 50px;
}
.content-column {
max-width: 1300px;
margin: auto;
}
/* BELOW LANDING STYLES */
.feature-showcase {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: auto;
}
.feature-showcase-item {
padding: 30px;
}
#interactive-ui {
grid-column: 1 / 2;
grid-row: 2 / 3;
border-right: 1px solid var(--bgColor);
}
#responsive-design {
grid-column: 2 / 2;
grid-row: 2 / 3;
}
#user-input {
grid-column: 1 / 2;
grid-row: 3 / 3;
border-right: 1px solid var(--bgColor);
border-bottom: none;
}
#modern-css {
grid-column: 2 / 2;
grid-row: 3 / 3;
}
/* POKEDEX STYLES */
#generation-selector {
justify-content: center;
}
2024-02-04 16:29:54 +00:00
}