I've found less ambiguity to be a better thing than not, where possible. Self-closing a tag that can't contain anything is one such example of removing ambiguity for "hobbyists".
One would need to know the tag is self-closing in order to put the closing slash in. Right? So if one knows it's self-closing already, why do they need to add the extra weight?
Makes no sense.
If one wants to add content to a self-closing element, one has far more problems than we're talking about here.
It can be done by libraries, for example, which want their output to be valid in both HTML and XHTML.
Note that's it's not a syntax error in HTML - because HTML doesn't have syntax errors. The HTML5 spec tried to codify all the weird Postel's law quirks of existing HTML4 parsers, and in this case, tells you how to ignore the extra / if you're a parser. Nothing is a syntax error.
I didn't say it's a syntax error. I said it is not specified in the standard. You can put the slash there but it has no meaning, it does nothing, and browsers ignore it. If anything, it can cause problems: https://github.com/validator/validator/wiki/Markup-%C2%BB-Vo...
So it's best to not do it altogether. If one thinks they need to be compliant with both HTML and XHTML, I'd bet they have far more problems with the rest of their markup that would fail at such an effort.
https://html.spec.whatwg.org/dev/input.html#the-input-elemen...