diff options
| author | Mark Otto <[email protected]> | 2013-01-17 10:49:10 -0800 |
|---|---|---|
| committer | Mark Otto <[email protected]> | 2013-01-17 10:49:10 -0800 |
| commit | 01b32f472d89e6c4f7e58aa85be7a6ad92a982ec (patch) | |
| tree | 08f315cf121a74694cf27b1d8be715a1bcb9d728 /less | |
| parent | 7e46b6f6364d754cb87fca35e0897cf2fad09206 (diff) | |
| download | bootstrap-01b32f472d89e6c4f7e58aa85be7a6ad92a982ec.tar.xz bootstrap-01b32f472d89e6c4f7e58aa85be7a6ad92a982ec.zip | |
Simplify and bring back the grid mixin for generating spans and offsets
Diffstat (limited to 'less')
| -rw-r--r-- | less/grid.less | 39 | ||||
| -rw-r--r-- | less/mixins.less | 83 | ||||
| -rw-r--r-- | less/variables.less | 10 |
3 files changed, 26 insertions, 106 deletions
diff --git a/less/grid.less b/less/grid.less index 47636189b..d810d9617 100644 --- a/less/grid.less +++ b/less/grid.less @@ -10,14 +10,14 @@ // Mobile-first defaults .row { - margin-left: -10px; - margin-right: -10px; + margin-left: @grid-gutter-width / -2; + margin-right: @grid-gutter-width / -2; .clear_float(); } [class^="span"] { min-height: 1px; - padding-left: 10px; - padding-right: 10px; + padding-left: @grid-gutter-width / 2; + padding-right: @grid-gutter-width / 2; // Proper box-model (padding doesn't add to width) -webkit-box-sizing: border-box; -moz-box-sizing: border-box; @@ -26,38 +26,14 @@ // Responsive: Tablets and up @media screen and (min-width: 768px) { - .container { max-width: 728px; } - + // Generate the grid columns and offsets [class^="span"] { float: left; } - .span1 { width: 8.3333333%; } - .span2 { width: 16.6666667%; } - .span3 { width: 25%; } - .span4 { width: 33.3333333%; } - .span5 { width: 41.666666667%; } - .span6 { width: 50%; } - .span7 { width: 58.333333333%; } - .span8 { width: 66.666666667%; } - .span9 { width: 75%; } - .span10 { width: 83.333333333%; } - .span11 { width: 91.666666667%; } - - .offset1 { margin-left: 8.3333333%; } - .offset2 { margin-left: 16.6666667%; } - .offset3 { margin-left: 25%; } - .offset4 { margin-left: 33.3333333%; } - .offset5 { margin-left: 41.666666667%; } - .offset6 { margin-left: 50%; } - .offset7 { margin-left: 58.333333333%; } - .offset8 { margin-left: 66.666666667%; } - .offset9 { margin-left: 75%; } - .offset10 { margin-left: 83.333333333%; } - .offset11 { margin-left: 91.666666667%; } - + #grid > .core(@grid-column-width, @grid-gutter-width); } // Responsive: Desktops and up @@ -78,9 +54,6 @@ } } -// Fixed (940px) -// #grid > .core(@grid-column-width, @grid-gutter-width, @grid-row-width); - // Reset utility classes due to specificity [class*="span"].pull-right { float: right; diff --git a/less/mixins.less b/less/mixins.less index f00ad6b8e..3282bd10e 100644 --- a/less/mixins.less +++ b/less/mixins.less @@ -431,20 +431,33 @@ // Make a Grid // Use .makeRow and .makeColumn to assign semantic layouts grid system behavior -.makeRow() { - margin-left: @grid-gutter-width * -1; - .clearfix(); +// .makeRow() { +// margin-left: @grid-gutter-width * -1; +// .clearfix(); +// } +// .makeColumn(@columns: 1, @offset: 0) { +// float: left; +// margin-left: (@grid-column-width * @offset) + (@grid-gutter-width * (@offset - 1)) + (@grid-gutter-width * 2); +// width: (@grid-column-width * @columns) + (@grid-gutter-width * (@columns - 1)); +// } + +.make-row() { + } -.makeColumn(@columns: 1, @offset: 0) { +.make-column(@columns) { float: left; - margin-left: (@grid-column-width * @offset) + (@grid-gutter-width * (@offset - 1)) + (@grid-gutter-width * 2); - width: (@grid-column-width * @columns) + (@grid-gutter-width * (@columns - 1)); + padding: @grid-gutter-width; + width: percentage(@columns / @grid-columns); +} +.make-column-offset(@columns) { + margin-left: percentage(@columns / @grid-columns); } + // The Grid #grid { - .core(@grid-column-width, @grid-gutter-width, @grid-row-width) { + .core(@grid-column-width, @grid-gutter-width) { .spanX(@index) when (@index > 0) { (~".span@{index}") { .span(@index); } @@ -458,7 +471,6 @@ } .offsetX(0) {} - // Base styles .offset(@columns) { margin-left: percentage(@columns / @grid-columns); @@ -467,65 +479,10 @@ width: percentage(@columns / @grid-columns); } - .row { - // Negative indent the columns so text lines up - margin-left: @grid-gutter-width / -2; - margin-right: @grid-gutter-width / -2; - // Clear the floated columns - .clearfix(); - } - - [class*="span"] { - float: left; // Collapse whitespace - min-height: 1px; // Prevent empty columns from collapsing - padding-left: @grid-gutter-width / 2; - padding-right: @grid-gutter-width / 2; - // Proper box-model (padding doesnt' add to width) - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - } - - // Generate .spanX and .offsetX - .spanX(@grid-columns); - .offsetX(@grid-columns); - - } - - - .input(@grid-column-width, @grid-gutter-width, @grid-row-width) { - - .spanX(@index) when (@index > 0) { - (~"input.span@{index}, textarea.span@{index}, select.span@{index}, .uneditable-input.span@{index}") { .span(@index); } - .spanX(@index - 1); - } - .spanX(0) {} - - .offsetX(@index) when (@index > 0) { - (~"input.offset@{index}, textarea.offset@{index}, select.offset@{index}, uneditable-input.offset@{index}") { .offset(@index); } - .offsetX(@index - 1); - } - .offsetX(0) {} - - .span(@columns) { - // TODO: Figure out how to add this back behind a class - // Part 1: Since inputs require padding *and* margin, we subtract the grid gutter width, as a percent of the row, from the default column width. - //width: percentage(@columns / @grid-columns) - percentage(@grid-gutter-width / @grid-row-width); - // Part 2: That subtracted width then gets split in half and added to the left and right margins. - // margin-left: percentage((@grid-gutter-width / 2) / @grid-row-width); - // margin-right: percentage((@grid-gutter-width / 2) / @grid-row-width); - } - - .offset(@columns) { - // Take the normal offset margin and add an extra gutter's worth. - margin-left: percentage(@columns / @grid-columns) + percentage((@grid-gutter-width / 2) / @grid-row-width); - } - // Generate .spanX and .offsetX .spanX(@grid-columns); .offsetX(@grid-columns); } - } diff --git a/less/variables.less b/less/variables.less index 45faa6939..b02d42fe1 100644 --- a/less/variables.less +++ b/less/variables.less @@ -271,13 +271,3 @@ @grid-column-width: 60px; @grid-gutter-width: 20px; @grid-row-width: (@grid-columns * @grid-column-width) + (@grid-gutter-width * (@grid-columns - 1)); - -// 1200px min -@grid-column-width-1200: 70px; -@grid-gutter-width-1200: 30px; -@grid-row-width-1200: (@grid-columns * @grid-column-width-1200) + (@grid-gutter-width-1200 * (@grid-columns - 1)); - -// 768px-979px -@grid-column-width-768: 42px; -@grid-gutter-width-768: 20px; -@grid-row-width-768: (@grid-columns * @grid-column-width-768) + (@grid-gutter-width-768 * (@grid-columns - 1)); |
