UNPKG

@getbase/base

Version:

A Rock Solid, Responsive CSS Framework built to work on all devices big, small and in-between.

347 lines (339 loc) 6.25 kB
@import "_mixins"; // Rows .row { display: flex; flex-wrap: wrap; position: relative; margin-left: -@grid-gutter; margin-right: -@grid-gutter; } // Columns .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-1-2, .col-1-3, .col-2-3, .col-1-4, .col-3-4, .col-1-5, .col-2-5, .col-3-5, .col-4-5 { flex: 0 0 auto; padding-left: @grid-gutter; padding-right: @grid-gutter; } // Columns .generate-grid (12); .generate-grid (@index) when (@index > 0) { .generate-grid (@index - 1); .col-@{index} { width: @index / 12 * 100%; } } .col-1-2 { flex: 0 0 (6 / 12) * 100%; max-width: (6 / 12) * 100%; } .col-1-3 { flex: 0 0 (4 / 12) * 100%; max-width: (4 / 12) * 100%; } .col-2-3 { flex: 0 0 (8 / 12) * 100%; max-width: (8 / 12) * 100%; } .col-1-4 { flex: 0 0 (3 / 12) * 100%; max-width: (3 / 12) * 100%; } .col-3-4 { flex: 0 0 (9 / 12) * 100%; max-width: (9 / 12) * 100%; } .col-1-5 { flex: 0 0 (2.4 / 12) * 100%; max-width: (2.4 / 12) * 100%; } .col-2-5 { flex: 0 0 (4.8 / 12) * 100%; max-width: (4.8 / 12) * 100%; } .col-3-5 { flex: 0 0 (7.2 / 12) * 100%; max-width: (7.2 / 12) * 100%; } .col-4-5 { flex: 0 0 (9.6 / 12) * 100%; max-width: (9.6 / 12) * 100%; } .col-full { flex-grow: 1; flex-basis: 0; max-width: 100%; } .breakpoint(m, { // Rows (Medium Devices) .row-m { display: flex; flex-wrap: wrap; position: relative; margin-left: -@grid-gutter; margin-right: -@grid-gutter; } // Columns (Medium Devices) .col-1-m, .col-2-m, .col-3-m, .col-4-m, .col-5-m, .col-6-m, .col-7-m, .col-8-m, .col-9-m, .col-10-m, .col-11-m, .col-12-m, .col-1-2-m, .col-1-3-m, .col-2-3-m, .col-1-4-m, .col-3-4-m, .col-1-5-m, .col-2-5-m, .col-3-5-m, .col-4-5-m { flex: 0 0 auto; padding-left: @grid-gutter; padding-right: @grid-gutter; } // Columns (Medium Devices) .generate-grid-m (12); .generate-grid-m (@index) when (@index > 0) { .generate-grid-m (@index - 1); .col-@{index}-m { width: @index / 12 * 100%; } } .col-1-2-m { flex: 0 0 (6 / 12) * 100%; max-width: (6 / 12) * 100%; } .col-1-3-m { flex: 0 0 (4 / 12) * 100%; max-width: (4 / 12) * 100%; } .col-2-3-m { flex: 0 0 (8 / 12) * 100%; max-width: (8 / 12) * 100%; } .col-1-4-m { flex: 0 0 (3 / 12) * 100%; max-width: (3 / 12) * 100%; } .col-3-4-m { flex: 0 0 (9 / 12) * 100%; max-width: (9 / 12) * 100%; } .col-1-5-m { flex: 0 0 (2.4 / 12) * 100%; max-width: (2.4 / 12) * 100%; } .col-2-5-m { flex: 0 0 (4.8 / 12) * 100%; max-width: (4.8 / 12) * 100%; } .col-3-5-m { flex: 0 0 (7.2 / 12) * 100%; max-width: (7.2 / 12) * 100%; } .col-4-5-m { flex: 0 0 (9.6 / 12) * 100%; max-width: (9.6 / 12) * 100%; } .col-full-m { flex-grow: 1; flex-basis: 0; max-width: 100%; } }); .breakpoint(l, { // Rows (Large Devices) .row-l { display: flex; flex-wrap: wrap; position: relative; margin-left: -@grid-gutter; margin-right: -@grid-gutter; } // Columns (Large Devices) .col-1-l, .col-2-l, .col-3-l, .col-4-l, .col-5-l, .col-6-l, .col-7-l, .col-8-l, .col-9-l, .col-10-l, .col-11-l, .col-12-l, .col-1-2-l, .col-1-3-l, .col-2-3-l, .col-1-4-l, .col-3-4-l, .col-1-5-l, .col-2-5-l, .col-3-5-l, .col-4-5-l { flex: 0 0 auto; padding-left: @grid-gutter; padding-right: @grid-gutter; } // Columns (Large Devices) .generate-grid-l (12); .generate-grid-l (@index) when (@index > 0) { .generate-grid-l (@index - 1); .col-@{index}-l { width: @index / 12 * 100%; } } .col-1-2-l { flex: 0 0 (6 / 12) * 100%; max-width: (6 / 12) * 100%; } .col-1-3-l { flex: 0 0 (4 / 12) * 100%; max-width: (4 / 12) * 100%; } .col-2-3-l { flex: 0 0 (8 / 12) * 100%; max-width: (8 / 12) * 100%; } .col-1-4-l { flex: 0 0 (3 / 12) * 100%; max-width: (3 / 12) * 100%; } .col-3-4-l { flex: 0 0 (9 / 12) * 100%; max-width: (9 / 12) * 100%; } .col-1-5-l { flex: 0 0 (2.4 / 12) * 100%; max-width: (2.4 / 12) * 100%; } .col-2-5-l { flex: 0 0 (4.8 / 12) * 100%; max-width: (4.8 / 12) * 100%; } .col-3-5-l { flex: 0 0 (7.2 / 12) * 100%; max-width: (7.2 / 12) * 100%; } .col-4-5-l { flex: 0 0 (9.6 / 12) * 100%; max-width: (9.6 / 12) * 100%; } .col-full-l { flex-grow: 1; flex-basis: 0; max-width: 100%; } }); .breakpoint(xl, { // Rows (Extra Large Devices) .row-xl { display: flex; flex-wrap: wrap; position: relative; margin-left: -@grid-gutter; margin-right: -@grid-gutter; } // Columns (Extra Large Devices) .col-1-xl, .col-2-xl, .col-3-xl, .col-4-xl, .col-5-xl, .col-6-xl, .col-7-xl, .col-8-xl, .col-9-xl, .col-10-xl, .col-11-xl, .col-12-xl, .col-1-2-xl, .col-1-3-xl, .col-2-3-xl, .col-1-4-xl, .col-3-4-xl, .col-1-5-xl, .col-2-5-xl, .col-3-5-xl, .col-4-5-xl { flex: 0 0 auto; padding-left: @grid-gutter; padding-right: @grid-gutter; } // Columns (Extra Large Devices) .generate-grid-xl (12); .generate-grid-xl (@index) when (@index > 0) { .generate-grid-xl (@index - 1); .col-@{index}-xl { width: @index / 12 * 100%; } } .col-1-2-xl { flex: 0 0 (6 / 12) * 100%; max-width: (6 / 12) * 100%; } .col-1-3-xl { flex: 0 0 (4 / 12) * 100%; max-width: (4 / 12) * 100%; } .col-2-3-xl { flex: 0 0 (8 / 12) * 100%; max-width: (8 / 12) * 100%; } .col-1-4-xl { flex: 0 0 (3 / 12) * 100%; max-width: (3 / 12) * 100%; } .col-3-4-xl { flex: 0 0 (9 / 12) * 100%; max-width: (9 / 12) * 100%; } .col-1-5-xl { flex: 0 0 (2.4 / 12) * 100%; max-width: (2.4 / 12) * 100%; } .col-2-5-xl { flex: 0 0 (4.8 / 12) * 100%; max-width: (4.8 / 12) * 100%; } .col-3-5-xl { flex: 0 0 (7.2 / 12) * 100%; max-width: (7.2 / 12) * 100%; } .col-4-5-xl { flex: 0 0 (9.6 / 12) * 100%; max-width: (9.6 / 12) * 100%; } .col-full-xl { flex-grow: 1; flex-basis: 0; max-width: 100%; } });