--------------- ############### classical approach comp. http://web.nwe.ufl.edu/writing/help/web/authoring/html/css/div.html #header #side #spacer #content #footer is saying about the location of elements rather then the data which is represented. **************** css-contracts ########################################################## #branding (b) Container used for all elements that is branding the site. Everything releated to brand the site goes in here. #b-trail -> branding-trail Used for a trail or tagline to define the site's purpose #branding-logo (bl) Contains all logos to brand the site. Everything releated with logos to brand the site goes in here. #bl-group -> branding-logo-group Used for the grouplogo. #search (se) Related to search interface and search results #nav or #navigation (n) Used to contain the navigation devices #content (c) Used for content rather than for another purpose such as navigation #siteinfo (si) Used for various site related information The problem that I am facing if I want to use e.g. the nav container for all nav elements is to still have the same style. The style depends on overall (IMO style specific) style-divs that are just for web-design reason. That would denegate a single skeleton for css-contracts like css-garden. One could introduce a raster approach but that would be more or less the top-main-footer approach. Breaking down the problem again to #id basis. The pathing of them makes the final style.