Who said CSS wasn't a programming language? Jon tackles one piece of site performance.
A talk on some problems solved related to CSS Performance at GitHub. The talk was given at CSS Dev Conference in Honolulu, HI 2012. The slides are available in PDF form here speakerdeck.com/jonrohan/githubs-css-performance
Rules
no unnecessary tag identifiers, i.e. ul#navigation, ul.menu
no ancestors, i.e. html div tr td
no universal selectors, i.e. * ( display: block; }
no unqualified selectors, i.e. [class^="mini-icon-"] { display:block;}
no chaining, i.e. .small.private.icon { ... }
webkit bug?
Solutions
remove unnecessary HTML
simplify CSS
try to minimize HTML DOM matches
refactor and reuse CSS via components
teamwork!
graph and monitor everything
Tools
CSS Explain
CSS profiler
timeline
audits
Graphite - Scalable Realtime Graphing
GitHub's CSS Performance from Jon Rohan on Vimeo.








