fixed bug regarding skill cards having only a vertical alignment like it's only a mobile view.

This commit is contained in:
Joshua Ashton
2025-01-02 16:41:13 -07:00
parent 37cfab705b
commit 8e37fe2994
4 changed files with 108 additions and 42 deletions
-1
View File
@@ -31,7 +31,6 @@ export default function App() {
"SHA-256 hashing", "SHA-256 hashing",
"file uploads in Base64", "file uploads in Base64",
"dynamic LLM routing", "dynamic LLM routing",
"user configuration",
], ],
image: "/images/one-ai-cropped.png", image: "/images/one-ai-cropped.png",
imageGallery: null, imageGallery: null,
+8 -1
View File
@@ -1,4 +1,5 @@
import React, { useState } from "react"; import React, { useState } from "react";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
/** /**
* TODO: Add email validation function. * TODO: Add email validation function.
@@ -29,6 +30,7 @@ export default function Contact() {
<form onSubmit={handleSubmit}> <form onSubmit={handleSubmit}>
<div className="row"> <div className="row">
<input <input
className="shadow"
placeholder="Name" placeholder="Name"
type="text" type="text"
id="name" id="name"
@@ -37,6 +39,7 @@ export default function Contact() {
onChange={handleChange} onChange={handleChange}
/> />
<input <input
className="shadow"
placeholder="example@email.com" placeholder="example@email.com"
type="email" type="email"
id="email" id="email"
@@ -47,6 +50,7 @@ export default function Contact() {
</div> </div>
<div className="row"> <div className="row">
<textarea <textarea
className="shadow"
placeholder="Message" placeholder="Message"
id="message" id="message"
name="message" name="message"
@@ -54,9 +58,12 @@ export default function Contact() {
onChange={handleChange} onChange={handleChange}
/> />
</div> </div>
<button type="submit" className="row">
<div className="row">
<button type="submit" className="button shadow">
Submit Submit
</button> </button>
</div>
</form> </form>
</div> </div>
); );
+2
View File
@@ -19,6 +19,7 @@ export default function Primary({ primaryText, secondaryText, image, skills }) {
</div> </div>
</div> </div>
<div id="skill-cards"> <div id="skill-cards">
<div id="card-grid">
<SkillCard <SkillCard
header="Languages" header="Languages"
symbol="code" symbol="code"
@@ -41,6 +42,7 @@ export default function Primary({ primaryText, secondaryText, image, skills }) {
onToggle={() => setActiveCardIndex(2)} onToggle={() => setActiveCardIndex(2)}
/> />
</div> </div>
</div>
<span className="material-icons down-indicator"> <span className="material-icons down-indicator">
keyboard_double_arrow_down keyboard_double_arrow_down
</span> </span>
+75 -17
View File
@@ -109,13 +109,15 @@ h4 {
#header, #header,
#skill-cards, #skill-cards,
#project-section, #project-section,
#project-cards-section { #project-cards-section,
#contact-section {
opacity: 0; opacity: 0;
} }
.swiper-slide-active #header, .swiper-slide-active #header,
.swiper-slide-active #skill-cards, .swiper-slide-active #skill-cards,
.swiper-slide-active #project-section, .swiper-slide-active #project-section,
.swiper-slide-active #project-cards-section { .swiper-slide-active #project-cards-section,
.swiper-slide-active #contact-section {
opacity: 0; opacity: 0;
} }
@@ -123,6 +125,7 @@ h4 {
.swiper-slide-active #skill-cards, .swiper-slide-active #skill-cards,
.swiper-slide-active #project-section, .swiper-slide-active #project-section,
.swiper-slide-active #project-cards-section, .swiper-slide-active #project-cards-section,
.swiper-slide-active #contact-section,
.down-indicator { .down-indicator {
animation: moveDown 0.8s ease-in forwards; animation: moveDown 0.8s ease-in forwards;
} }
@@ -170,7 +173,6 @@ h4 {
display: grid; display: grid;
grid-template-columns: 55% 45%; grid-template-columns: 55% 45%;
grid-template-rows: 100%; grid-template-rows: 100%;
column-gap: 2vw;
} }
#header-text { #header-text {
@@ -209,9 +211,15 @@ h4 {
} }
#skill-cards { #skill-cards {
border: 1px solid white;
width: 100%; width: 100%;
display: grid; }
place-items: center;
#card-grid {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
} }
/**SKILL CARDS**/ /**SKILL CARDS**/
@@ -220,6 +228,8 @@ h4 {
background-color: #ebd2ff; background-color: #ebd2ff;
border-radius: 20px; border-radius: 20px;
min-width: 20vw; min-width: 20vw;
max-width: 40vw;
margin: 1vw;
} }
.skill-card-header { .skill-card-header {
@@ -293,6 +303,7 @@ h4 {
overflow: hidden; overflow: hidden;
height: 90%; height: 90%;
width: 100%; width: 100%;
transition-duration: 1s;
} }
.project-card .img-container { .project-card .img-container {
@@ -364,6 +375,8 @@ h4 {
width: 80%; width: 80%;
color: #4a245e; color: #4a245e;
background-color: #ebd2ff; background-color: #ebd2ff;
border: 3px solid #ebd2ff;
outline: none;
border-radius: 18px; border-radius: 18px;
font-size: clamp(1rem, 1.5vw, 2rem); font-size: clamp(1rem, 1.5vw, 2rem);
@@ -373,22 +386,65 @@ h4 {
align-items: center; align-items: center;
justify-content: center; justify-content: center;
padding: 1vw; padding: 1vw;
transition-duration: 0.5s;
}
.button:hover {
background-color: #4a245e;
color: #ebd2ff;
} }
/**Contact Section**/ /**Contact Section**/
#contact-section { #contact-section {
height: 90vh; height: 90vh;
width: 100%; width: 100%;
margin: 5vw; margin: 0 5vw 5vw 5vw;
}
#contact-section h1 { display: flex;
margin-left: 5vw; flex-direction: column;
align-items: center;
justify-content: center;
} }
#contact-section form { #contact-section form {
border: 1px solid white; width: 80vw;
height: 70vh; height: 80%;
}
#contact-section input,
#contact-section textarea {
width: 100%;
padding: 2vw;
margin: 2vw;
border-radius: 18px;
background-color: #ebd2ff;
color: #4a245e;
outline: none;
border: none;
font-size: clamp(0.75rem, 1.1rem, 2rem);
}
#contact-section textarea {
min-height: 30vh;
}
#contact-section input:valid,
#contact-section textarea:valid {
background-color: #ebd2ff;
}
#contact-section input:focus,
#contact-section textarea:focus {
outline: none;
border: none;
}
#contact-section .button {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
} }
/**PDF Viewer**/ /**PDF Viewer**/
@@ -516,13 +572,8 @@ h4 {
border-radius: 18px 18px 18px 18px; border-radius: 18px 18px 18px 18px;
} }
.cards {
grid-template-columns: 100%;
grid-template-rows: 30% 30% 30%;
}
.card { .card {
min-width: 50vw; min-width: 40vw;
margin: 1vw; margin: 1vw;
} }
@@ -571,6 +622,13 @@ h4 {
.pdf-page { .pdf-page {
width: 100%; width: 100%;
} }
#card-grid {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
} }
@media (max-width: 485px) { @media (max-width: 485px) {