CSS Master

(Primo) #1

CSS File Organization


PartofagoodCSSarchitectureisfileorganization.Amonolithicfileisfineforsolo
developersorverysmallprojects.Forlargeprojects—siteswithmultiplelayouts
andcontenttypes,ormultiplebrandsunderthesamedesignumbrella—it’ssmarter
touseamodularapproachandsplityourCSSacrossmultiplefiles.

SplittingyourCSSacrossfilesmakesiteasiertoparceltasksouttoteams.Onede-
velopercanworkontypography-relatedstyles,whileanothercanfocusondevelop-
inggridcomponents.Teamscansplitworksensiblyandincreaseoverallproductiv-
ity.

SowhatmightagoodfilestructurethatsplitstheCSSacrossfileslooklike?Here’s
astructuresimilartoonesI’veusedinrecentprojects:

■ reset.css:resetandnormalizationstyles;minimalcolor,border,orfont-related
declarations

■ typography.css:fontfaces,weights,lineheights,sizes,andstylesforheadings
andbodytext

■ layouts.css:stylesthatmanagepagelayoutsandsegments,includinggrids

■ forms.css:stylesforformcontrolsandlabels

■ lists.css:list-specificstyles

■ tables.css:table-specificstyles

■ carousel.css:stylesrequiredforcarouselcomponents

■ accordion.css:stylesforaccordioncomponents

Ifyou’reusingapreprocessor,suchasSassorLess,youmayalsowanttoinclude
a_config.scssor_config.lessfilethatcontainscolorvariablesandthelike.

Inthisstructure,eachCSSfilehasaspecificandnarrowscope.Howmanyfiles
you’llultimatelyendupwithdependsonhowmanyvisualpatternsorcomponents
arecalledforbyyoursite’sdesign.

72 CSS Master

Free download pdf