remarked
> = The solution to all of these problems
>
> I humbly put forward that modern web development provides us all the utilities to move away from class names and implement something much more robust, with some fairly straightforward changes:
>
> === Attributes
>
> Attributes allow us to parameterise a component using a key-value representation, very similar to Map<string, T>. Browsers come with a //wealth// of selector functions to parse the values of an attribute.