Bootstrap provides classes such as text-left (Alignment classes), text-lowercase (Transformation classes) etc, which is the same as defining inline-styles (not technically, but logically).
In an alternative methodology such as bem, it imposes that classes should reflect 'physical' blocks and elements, and their modifier (or the state of the element, such as active, current), and any styles should be applied purely in the CSS.
The Bootstrap approach seems like a poor separation of concern between structure and presentation, and goes against this W3C Tip for Webmasters.
This issue is echoed by many:
- Niko Sams - Why I don't like Twitter Bootstrap
- Paradax - Bootstrap The good, the bad and the ugly
- bvision - Please stop embedding Bootstrap classes in your HTML!
How does one use Bootstrap while still keeping the HTML markup semantic?