Your claim surprised me so much I went and re-read the latest HTML spec ( https://www.w3.org/TR/html52/rendering.html#rendering ) and it does indeed say:
> The initial value for the color property is expected to be black. The initial value for the background-color property is expected to be transparent. The canvas' background is expected to be white.
The CSS specs ( https://www.w3.org/TR/2018/REC-css-color-3-20180619/ and https://www.w3.org/TR/2011/REC-CSS2-20110607/colors.html#q14... ) say that the initial values depend on the user agent (hence deferring to the above quote):
> Name: color
> Initial: depends on user agent
> 'background-color'
> Initial: transparent
However, is this also the case for form fields? Scanning through the various CSS specs I can't find any mention of form fields (e.g. buttons, text inputs, etc.). The HTML specs don't seem to specify anything w.r.t. styling form fields either.
In my day, the default background color was #C0C0C0, as is laid down in the Book of Mozilla.
[0] https://developer.mozilla.org/en-US/docs/Web/CSS/@media/pref...
Just like the default border style is "none", but that's not what form controls do.
But even past that point, this is the _ua_ default. A user can always have a user stylesheet that sets whatever colors the user wants (e.g. for accessibility reasons).
And not setting background without setting color and vice versa is standard best-practice web development advice and has been for 2 decades or so now.
https://html.spec.whatwg.org/multipage/rendering.html#phrasi...
"The initial value for the 'color' property is expected to be black. The initial value for the 'background-color' property is expected to be 'transparent'. The canvas's background is expected to be white."