You can have multiple pseudo classes on an input but the most important three are :active
, :focus
and in this case :invalid
. Active is when you have clicked on the input but doesn't leave your mouse. Focus is when your curser is blinking inside the input and invalid you know.
Here's the code that you can use. Also the border you are talking about can be the outline
property and is in the focus state.
Here's the code that you can modify accordingly.
* {
padding: 0;
margin: 0;
box-sizing: border-box;
}
.input {
height: 30px;
width: 200px;
color: black;
font-family: Helvetica, Montserrat, Verdana, sans-serif;
font-size: 20px;
}
input:active {
background: rgba(4, 4, 4, 0.1);
box-shadow: none;
}
.input:focus {
outline: none;
background: rgba(4, 4, 4, 0.1);
}
.input:invalid {
border-color: black;
box-shadow: none;
}
<input class="input" type="email" />
EDIT:
Firefox somehow seems to apply a box-shadow
of red color on :invalid
style. Just add box-shadow:none;
in :invalid
style and you will have no that border kindy thing.