The browser will zoom if the font-size is less than 16px and the default font-size for form elements is 11px (at least in Chrome and Safari).
Additionally, the select element needs to have the focus pseudo-class attached.
input[type="color"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="email"],
input[type="month"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="time"],
input[type="url"],
input[type="week"],
select:focus,
textarea {
font-size: 16px;
}
It's not necessary to use all the above, you can just style the elements you need, eg: just text, number
, and textarea
:
input[type='text'],
input[type='number'],
textarea {
font-size: 16px;
}
An alternate solution to having the input elements inherit from a parenting style:
body {
font-size: 16px;
}
input[type="text"] {
font-size: inherit;
}
Hope it helped you out.
From this answer