After I saw Angular syntax. I always wonder if it is valid html and conform to html spec.
After reading through some posts and articles there are 2 sides of opinions.
One said that it is valid according to the syntax spec. 1
Another said no! The attribute of each HTML tag is predefined in a certain specific set with some exception such as data attribute. (e.g. 2, 3)
There are more frameworks apart from angular that invent this kind of new attributes. Some of them (e.g. jsx) compile custom syntax into valid javascript or html representation of the template.
Some of them (e.g. Angular itself) use it as is (or at least use it as is for some short period of time).
The point of this question is not all about Angular but for the convenience of answering lets scope it down to just Angular.
Is the syntax valid according to every part of the specification?
Does Angular use another method that somehow makes the syntax valid? (e.g. there is another part of spec that allow extending the spec itself anyhow.)
If no positive answer to the questions above why it is widely used?