<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Css :required :invalid test</title>
</head>
<body>
<div class="formwrap">
<label for="name">Your name</label>
<input type="text" name="name" placeholder="Your name" required>
</div>
<div class="formwrap">
<label for="email">Email</label>
<input type="email" name="email" id="email" placeholder="Your email" required>
</div>
</body>
</html>
* {
box-sizing: border-box;
}
body {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
min-height: 100vh;
font-family: sans-serif;
}
.formwrap {
width: 30%;
margin: 0 0 1rem 0;
}
label {
display: block;
margin: 0 0 0.2rem 0;
}
input {
width: 100%;
padding: 0.6rem 1rem;
border: solid 1px hsl(270, 50%, 30%);
border-radius: 4px;
box-shadow: none;
}
input:required:invalid {
border: 2px solid hsl(0, 50%, 50%);
}
input:required:valid {
border: 2px solid hsl(120, 50%, 50%);
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.