Toggle navigation
☰
Home
HTML
CSS
Scripting
Database
<!DOCTYPE html> <title>My Example</title> <!-- Place the following CSS in your <head> or stylesheet --> <style> /* This is an optional body style to provide a background for the page */ body { background-color: #f9fafb; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif; } /* === Grid Container for the Cards === */ .cards-grid-container { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 1.5rem; padding: 1.5rem; } /* === Project Overview Card Styles === */ .po-card { --po-radius: 12px; --po-shadow: 0 4px 10px rgba(0,0,0,0.06); --tag-bg: #eef2ff; --tag-color: #4338ca; background-color: #ffffff; border-radius: var(--po-radius); box-shadow: var(--po-shadow); display: flex; flex-direction: column; overflow: hidden; transition: box-shadow 0.2s ease, transform 0.2s ease; } .po-card:hover { transform: translateY(-5px); box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); } .po-card a { text-decoration: none; color: inherit; } .po-card-image-container { overflow: hidden; } .po-card-image { width: 100%; height: 220px; object-fit: cover; display: block; transition: transform 0.3s ease; } .po-card:hover .po-card-image { transform: scale(1.05); } .po-card-content { padding: 1.25rem 1.5rem; flex-grow: 1; display: flex; flex-direction: column; } .po-card-title { font-size: 1.25rem; font-weight: 600; margin: 0 0 0.5rem; } a:hover .po-card-title { color: #4f46e5; } .po-card-description { font-size: 1rem; line-height: 1.6; color: #4b5563; margin: 0; flex-grow: 1; /* Pushes tags and CTA down */ } .po-card-tags { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1rem; padding-bottom: 1rem; } .po-tag { background-color: var(--tag-bg); color: var(--tag-color); font-size: 0.8rem; font-weight: 500; padding: 0.25rem 0.75rem; border-radius: 9999px; } .po-card-footer { padding-top: 1rem; border-top: 1px solid #f3f4f6; } .po-card-cta { font-weight: 500; display: inline-flex; align-items: center; gap: 0.35rem; color: #4f46e5; } .po-card-cta:hover { gap: 0.5rem; } .po-card-cta svg { width: 18px; height: 18px; transition: gap 0.2s ease; } </style> <!-- Place the following HTML in your <body> --> <div class="cards-grid-container"> <!-- Card 1 --> <article class="po-card"> <a href="#" class="po-card-image-container"> <!-- Image by placehold.co. Replace with your own. --> <img class="po-card-image" src="https://placehold.co/800x440/1f2937/ffffff/png?text=Starlight" alt="Screenshot of the Starlight dashboard project."> </a> <div class="po-card-content"> <a href="#"><h3 class="po-card-title">Starlight Dashboard UI</h3></a> <p class="po-card-description">A complete redesign of an enterprise-level SaaS platform to improve user workflow and data visualization.</p> <div class="po-card-tags"> <span class="po-tag">UI/UX Design</span> <span class="po-tag">Figma</span> <span class="po-tag">React</span> </div> <footer class="po-card-footer"> <a href="#" class="po-card-cta"> View Case Study <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor"><path fill-rule="evenodd" d="M2 8a.75.75 0 01.75-.75h8.69L8.22 4.03a.75.75 0 011.06-1.06l4.5 4.5a.75.75 0 010 1.06l-4.5 4.5a.75.75 0 01-1.06-1.06L11.44 8.75H2.75A.75.75 0 012 8z" clip-rule="evenodd"/></svg> </a> </footer> </div> </article> <!-- Card 2 --> <article class="po-card"> <a href="#" class="po-card-image-container"> <!-- Image by placehold.co. Replace with your own. --> <img class="po-card-image" src="https://placehold.co/800x440/be185d/ffffff/png?text=Aperture" alt="Screenshot of the Aperture mobile app."> </a> <div class="po-card-content"> <a href="#"><h3 class="po-card-title">Aperture Mobile App</h3></a> <p class="po-card-description">A native iOS and Android application for photographers to manage their portfolios and client galleries on the go.</p> <div class="po-card-tags"> <span class="po-tag">Mobile App</span> <span class="po-tag">Swift</span> <span class="po-tag">Kotlin</span> </div> <footer class="po-card-footer"> <a href="#" class="po-card-cta"> View Case Study <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor"><path fill-rule="evenodd" d="M2 8a.75.75 0 01.75-.75h8.69L8.22 4.03a.75.75 0 011.06-1.06l4.5 4.5a.75.75 0 010 1.06l-4.5 4.5a.75.75 0 01-1.06-1.06L11.44 8.75H2.75A.75.75 0 012 8z" clip-rule="evenodd"/></svg> </a> </footer> </div> </article> </div>