The Unified Card System provides a consistent, reusable, and extensible card component system for all templates in the AnimateItNow project. This system ensures visual consistency, improves maintainability, and simplifies the creation of new card-based layouts.
<article class="card-system [variants] [effects]">
<!-- Card content -->
</article>.card-system- The base card class that provides core styling and animations
.card-vertical- Vertical card layout (default).card-horizontal- Horizontal card layout with image on left
.card-tilt- 3D tilt effect on hover.card-float- Floating animation effect.card-glow- Glow effect on hover.card-morph- Shape morphing effect.card-flip- Flip card effect
<article class="card-system card-vertical">
<img src="image.jpg" alt="Card image" class="card-img-top">
<div class="card-body">
<h2 class="card-title">Card Title</h2>
<p class="card-text">Card content goes here.</p>
<a href="#" class="card-btn">Action</a>
</div>
</article><article class="card-system card-horizontal card-tilt">
<div class="card-img-container">
<img src="image.jpg" alt="Card image" class="card-img-top">
</div>
<div class="card-content">
<div class="card-body">
<h2 class="card-title">Horizontal Card</h2>
<p class="card-text">Card content goes here.</p>
<a href="#" class="card-btn">Learn More</a>
</div>
</div>
</article><article class="card-system card-vertical card-flip" style="height: 400px;">
<div class="card-flip-inner">
<div class="card-flip-front">
<div class="card-body">
<h2 class="card-title">Front Side</h2>
<p class="card-text">Front content.</p>
</div>
</div>
<div class="card-flip-back">
<div class="card-body">
<h2 class="card-title">Back Side</h2>
<p class="card-text">Back content.</p>
</div>
</div>
</div>
</article>The card system uses CSS custom properties for easy theming:
body.dark .card-system {
--card-bg: #2c2c2c;
--card-shadow: rgba(0, 0, 0, 0.3);
--card-shadow-hover: rgba(0, 0, 0, 0.5);
--text-primary: #f1f1f1;
--text-secondary: #aaaaaa;
}The card system is fully responsive:
- Cards automatically adjust to full width on mobile devices
- Horizontal cards convert to vertical layout on small screens
- Font sizes and padding adjust for better readability on all devices
- All interactive elements have proper focus states
- Sufficient color contrast for readability
- Semantic HTML structure
- Proper ARIA attributes where needed
- Always use the
.card-systembase class - Combine layout variants with hover effects as needed
- Use appropriate semantic HTML elements
- Maintain consistent spacing and typography
- Test cards in both light and dark modes
- Ensure proper image aspect ratios
To add new hover effects:
- Create a new CSS class in
styles.css - Follow the naming convention
.card-[effect-name] - Ensure the effect works well with existing variants
- Test in both light and dark modes
- Update this documentation with usage examples