From Nicole's presentation at the CSS Summit. This is brand new research regarding efficient CSS selector design. Practicing the rules outlined here will make your CSS lean, your site fast, and your maintenance minimal. A beautiful combination for people concerned with building performance into their sites.
16. X
.myModule .inner b{...}
.myModule2 b {...}
GIVE RULES THE
SAME STRENGTH
Use cascade order to overwrite previous rules
.myModule b{...}
.myModule2 b {...}
20. AVOID OVERLY SPECIFIC
CLASSES
they’re all semantic, but limiting
.vehicle{...}
.motorcycle{...}
.ducati{...}
.ducatiMonster620{...}
.nicolesDucatiMonster620{...}
21. AVOID OVERLY SPECIFIC
CLASSES
they’re all semantic, but limiting
.vehicle{...}
.motorcycle{...}
.ducati{...}
X
.ducatiMonster620{...}
.nicolesDucatiMonster620{...}
22. #myUniqueIdentifier{...}
#myUniqueIdentifier2{...}
AVOID SINGLETONS
ids can only be used once in any given page
Source: Chris Griego
23. X
#myUniqueIdentifier{...}
#myUniqueIdentifier2{...}
AVOID SINGLETONS
ids can only be used once in any given page
Source: Chris Griego
24. Media
Subheading
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis
aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
USE MIXINS
to avoid repeating code
Media Extended
Subheading
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis
aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
25. .inner{...} .weatherMod .inner{...}
.tr{...} .weatherMod .tr{...}
.bl{...} .weatherMod .bl{...}
ENCAPSULATION
don’t access sub-nodes of an object directly
inner
26. .inner{...}
X
.weatherMod .inner{...}
.tr{...} .weatherMod .tr{...}
.bl{...} .weatherMod .bl{...}
ENCAPSULATION
don’t access sub-nodes of an object directly
inner