CSS has child/descendent selectors because that’s often the best way to find an element.
On second thought, I should clarify this:
- using child/descendent selectors to find an element is wrong. In this case, BEM is the right approach (whether to use those
multipart--with--dashes--classnames-----------------is a decision I leave to you —but keep in mind that, if the hierarchy really is irrelevant, then there’s no reason to describe it in the class name).
- using child/descendent selectors to describe an element is absolutely correct. This is where BEM fails.
And of course: cssguidelin.es
I’ve read that before. All good points, and yet somehow, only tedious/ awkward/ obnoxious style rules fall out the other end. Seriously, I would hate working with him.