CSS Program to Reduce Motion Preference with Explanation
CSS
Hard
Responsive Design
13 views
1 min read
84 words
This problem helps you practice core CSS fundamentals in a practical way. It builds intuition around reduce, motion, html. Let’s break it down step by step so you can implement it confidently.
Problem Statement
Stop animations when user prefers reduced motion.
Input Format
No input.
Output Format
Print the HTML+CSS code in one block.
Constraints
Use @media (prefers-reduced-motion: reduce).
Code Solution
This explanation is written for learning purposes and to help beginners understand the concept clearly.
<!doctype html>
<html lang='en'>
<head>
<meta charset='utf-8'>
<meta name='viewport' content='width=device-width, initial-scale=1'>
<title>meetcode</title>
<style>
@keyframes bounce { 50% { transform: translateY(-6px); } }
.dot { width: 12px; height: 12px; background: #0b5; border-radius: 50%; display: inline-block; animation: bounce 700ms ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
.dot { animation: none; }
}
</style>
</head>
<body>
<span class='dot'></span>
<span>Loading meetcode</span>
</body>
</html>
Output Example
No sample I/O is provided for this question.
Common Mistakes
- Misreading input/output format.
- Not handling constraints and edge cases.
- Off-by-one errors in loops.
- Forgetting to reset variables between test cases (if any).
Solution Guide
Problem
Stop animations when user prefers reduced motion.
Input / Output
Output
Print the HTML+CSS code in one block.
Constraints
Use @media (prefers-reduced-motion: reduce).
Details
Common Mistakes
- Misreading input/output format.
- Not handling constraints and edge cases.
- Off-by-one errors in loops.
- Forgetting to reset variables between test cases (if any).
Official Solution
<!doctype html>
<html lang='en'>
<head>
<meta charset='utf-8'>
<meta name='viewport' content='width=device-width, initial-scale=1'>
<title>meetcode</title>
<style>
@keyframes bounce { 50% { transform: translateY(-6px); } }
.dot { width: 12px; height: 12px; background: #0b5; border-radius: 50%; display: inline-block; animation: bounce 700ms ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
.dot { animation: none; }
}
</style>
</head>
<body>
<span class='dot'></span>
<span>Loading meetcode</span>
</body>
</html>
Solutions (0)
No solutions submitted yet. Be the first!