style is bad for SoC. I know I can use
class directly, but why support modifier somewhere and not everywhere? A button is a navigational element as well, and it supports modifier. I can create my own BEM-like class names, but why mix built-in BEM naming via modifier with my own custom naming via class? It just seems weird and inconsistent.
On top of that, I have some local annoying DOM-building framework that renames
classname for non-standard DOM elements, and I can circumvent that for most elements by using modifier, but not for all. I have a work-around now, but it is just that – a work-around. Having BEM styling for all elements “natively” supported seems like the consistent choice.
Given this is the documentation for carousel, discussing input seems counterintuitive here, but
<ons-input modifier="foo"> does not apply a
input--foo class to the outer
<ons-input> element – only to the inner
<input> element – which again is not enough to fully style the component.