Created
April 7, 2016 07:41
-
-
Save ruffle1986/54ef894b9ff3a42548af2d23a63e6eb6 to your computer and use it in GitHub Desktop.
semantic grid system for less
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
///////////////// | |
// Semantic.gs // for LESS: http://lesscss.org/ | |
///////////////// | |
// Defaults which you can freely override | |
@column-width: 60; | |
@gutter-width: 20; | |
@columns: 12; | |
// Utility variable — you should never need to modify this | |
@gridsystem-width: (@column-width*@columns) + (@gutter-width*@columns) * 1px; | |
// Set @total-width to 100% for a fluid layout | |
@total-width: @gridsystem-width; | |
// Uncomment these two lines and the star-hack width/margin lines below to enable sub-pixel fix for IE6 & 7. See http://tylertate.com/blog/2012/01/05/subpixel-rounding.html | |
// @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 // | |
////////// | |
.row(@columns:@columns) { | |
display: block; | |
width: @total-width*((@gutter-width + @gridsystem-width)/@gridsystem-width); | |
margin: 0 @total-width*(((@gutter-width*.5)/@gridsystem-width)*-1); | |
// *width: @total-width*((@gutter-width + @gridsystem-width)/@gridsystem-width)-@correction; | |
// *margin: 0 @total-width*(((@gutter-width*.5)/@gridsystem-width)*-1)-@correction; | |
.clearfix; | |
} | |
.column(@x,@columns:@columns) { | |
display: inline; | |
float: left; | |
width: @total-width*((((@gutter-width+@column-width)*@x)-@gutter-width) / @gridsystem-width); | |
margin: 0 @total-width*((@gutter-width*.5)/@gridsystem-width); | |
// background: red; | |
// *width: @total-width*((((@gutter-width+@column-width)*@x)-@gutter-width) / @gridsystem-width)-@correction; | |
// *margin: 0 @total-width*((@gutter-width*.5)/@gridsystem-width)-@correction; | |
} | |
.push(@offset:1) { | |
margin-left: @total-width*(((@gutter-width+@column-width)*@offset) / @gridsystem-width) + @total-width*((@gutter-width*.5)/@gridsystem-width); | |
} | |
.pull(@offset:1) { | |
margin-right: @total-width*(((@gutter-width+@column-width)*@offset) / @gridsystem-width) + @total-width*((@gutter-width*.5)/@gridsystem-width); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment