why see .closed-dialogue , .open-dialogue in commonly-used libraries, instead of .closed.dialogue , .open.dialogue?
the problem single class per element
to format dialogues first approach, need 2 classes in selector.
each time add difference, f.e. colour, multiply number of classes in selector: .warning-dialogue-closed, .error-dialogue-closed, .warning-dialogue-open, .error-dialogue-open.
now how can practice? hardly maintainable!
you couldn't separate code in modules, since basic selector dialogues needs know dialogues exist!
several classes per element solve this
by concatenating several classes, code way shorter, more maintainable , easier read:
.dialogue formats dialogues, no matter how many different have.
.error.dialogue , .warning.dialogue add changes either flavour. .open.dialogue , .closed.dialogue take care of other difference.
you have isolated module defines big , small dialogues, , basic module doesn't have know it.
so why have never seen this?
the problem approach it's more conflict other classes.
if page has other unrelated open class, class="open dialog" pick rules class , messed up.
this why libraries jquery ui tend prefix of classes unique value.
Comments
Post a Comment