CSS Program to Shake Invalid Input with Explanation
CSS
Hard
Transitions & Animations
21 views
1 min read
88 words
This problem helps you practice core CSS fundamentals in a practical way. It builds intuition around shake, error, html. Let’s break it down step by step so you can implement it confidently.
Problem Statement
Shake an input when it has class 'error'.
Input Format
No input.
Output Format
Print the HTML+CSS code in one block.
Constraints
Use keyframes and apply animation on .error.
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 shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-6px); } 75% { transform: translateX(6px); } }
input { padding: 10px 12px; border-radius: 12px; border: 1px solid #bbb; }
.error { border-color: #c1121f; animation: shake 300ms ease; }
</style>
</head>
<body>
<input class='error' type='text' value='wrong'>
</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
Shake an input when it has class 'error'.
Input / Output
Output
Print the HTML+CSS code in one block.
Constraints
Use keyframes and apply animation on .error.
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 shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-6px); } 75% { transform: translateX(6px); } }
input { padding: 10px 12px; border-radius: 12px; border: 1px solid #bbb; }
.error { border-color: #c1121f; animation: shake 300ms ease; }
</style>
</head>
<body>
<input class='error' type='text' value='wrong'>
</body>
</html>
Solutions (0)
No solutions submitted yet. Be the first!