///////////////// // Semantic.gs // for Stylus: http://learnboost.github.com/stylus/ ///////////////// // Defaults which you can freely override column-width = 60px gutter-width = 20px columns = 12 // Utility variable — you should never need to modify this _gridsystem-width = (column-width + gutter-width) * columns // Set @total-width to 100% for a fluid layout total-width = _gridsystem-width // Correcting percentage-to-pixel rounding errors in IE6 & 7 // See http://tylertate.com/blog/2012/01/05/subpixel-rounding.html // Override @min with the minimum width of your layout min-width = 960 correction = (((0.5 / min-width) * 100) * 1%) // The micro clearfix http://nicolasgallagher.com/micro-clearfix-hack/ clearfix() *zoom:1 &:before, &:after content:"" display:table &:after clear:both ////////// // GRID // ////////// body width 100% clearfix() row(columns = columns) display block width total-width * ((gutter-width + _gridsystem-width ) / _gridsystem-width) margin 0 total-width * (((gutter-width * 0.5) / _gridsystem-width ) * - 1) *width total-width * ((gutter-width + _gridsystem-width ) / _gridsystem-width)-correction *margin 0 total-width * (((gutter-width * 0.5) / _gridsystem-width ) * - 1)-correction column(x, columns = columns) display inline float left overflow hidden width total-width * ((((gutter-width + column-width ) * x) - gutter-width) / _gridsystem-width) margin 0 total-width * ( (gutter-width * 0.5) / _gridsystem-width) *width total-width * ((((gutter-width + column-width ) * x) - gutter-width) / _gridsystem-width)-correction *margin 0 total-width * ( (gutter-width * 0.5) / _gridsystem-width)-correction offset(offset = 1) margin-left total-width*(((gutter-width+column-width)*offset + (gutter-width*0.5))/_gridsystem-width)