stratum 0.2.4 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.editorconfig +7 -0
- data/.gitignore +2 -2
- data/assets/stylesheets/_css3.scss +7 -0
- data/assets/stylesheets/_helpers.scss +7 -0
- data/assets/stylesheets/_stratum.scss +12 -15
- data/assets/stylesheets/css3/_border-radius.scss +2 -2
- data/assets/stylesheets/css3/_user-select.scss +12 -0
- data/assets/stylesheets/helpers/_box.scss +17 -0
- data/assets/stylesheets/{addons → helpers}/_dimensions.scss +7 -4
- data/assets/stylesheets/{addons → helpers}/_group.scss +0 -0
- data/assets/stylesheets/helpers/_icon-map.scss +11 -0
- data/assets/stylesheets/helpers/_icons.scss +177 -0
- data/assets/stylesheets/{addons → helpers}/_position.scss +6 -6
- data/assets/stylesheets/helpers/_triangle.scss +64 -0
- data/assets/stylesheets/{addons → helpers}/_vendor-prefix.scss +0 -0
- data/assets/stylesheets/layout/_grid.scss +4 -5
- data/assets/stylesheets/layout/{_grid-functions.scss → grid/_functions.scss} +12 -11
- data/assets/stylesheets/layout/grid/_guides.scss +123 -0
- data/assets/stylesheets/layout/grid/_mixins.scss +83 -0
- data/assets/stylesheets/layout/grid/_semantics.scss +5 -0
- data/assets/stylesheets/layout/grid/semantics/_core.scss +96 -0
- data/assets/stylesheets/layout/grid/semantics/_nested.scss +34 -0
- data/assets/stylesheets/layout/grid/semantics/_offsets.scss +50 -0
- data/assets/stylesheets/layout/grid/semantics/_overrides.scss +71 -0
- data/assets/stylesheets/layout/grid/semantics/_subdivisions.scss +16 -0
- data/assets/stylesheets/layout/scaffolding.scss +105 -52
- data/bin/stratum +1 -1
- data/lib/stratum/generator.rb +74 -0
- data/lib/stratum/version.rb +3 -0
- data/lib/stratum.rb +2 -73
- data/stratum.gemspec +1 -1
- metadata +27 -38
- data/.gitmodules +0 -3
- data/assets/stylesheets/layout/_grid-guides.scss +0 -93
- data/assets/stylesheets/layout/_grid-mixins.scss +0 -79
- data/assets/stylesheets/layout/_grid-semantics.scss +0 -266
- data/lib/version.rb +0 -3
- data/tests/Gemfile +0 -6
- data/tests/Gemfile.lock +0 -63
- data/tests/Guardfile +0 -11
- data/tests/_config.yml +0 -5
- data/tests/_includes/menu-grids.html +0 -9
- data/tests/_includes/shared-grid-samples.html +0 -58
- data/tests/_layouts/default.html +0 -21
- data/tests/grid/arstechnica.html +0 -70
- data/tests/grid/bbc.html +0 -74
- data/tests/grid/fluid.html +0 -85
- data/tests/grid/guardian.html +0 -248
- data/tests/grid/index.html +0 -5
- data/tests/grid/pixel.html +0 -29
- data/tests/images/arstechnica.png +0 -0
- data/tests/images/bbc.png +0 -0
- data/tests/images/capture.js +0 -15
- data/tests/images/guardian-home.png +0 -0
- data/tests/scss/_mock-block.scss +0 -68
- data/tests/scss/arstechnica.scss +0 -106
- data/tests/scss/bbc.scss +0 -93
- data/tests/scss/fluid-grid.scss +0 -50
- data/tests/scss/guardian.scss +0 -219
- data/tests/scss/main.scss +0 -90
- data/tests/scss/pixel-grid.scss +0 -14
data/lib/stratum.rb
CHANGED
@@ -1,73 +1,2 @@
|
|
1
|
-
|
2
|
-
require '
|
3
|
-
require 'fileutils'
|
4
|
-
require 'thor'
|
5
|
-
|
6
|
-
module Stratum
|
7
|
-
class Generator < Thor
|
8
|
-
map ['-v', '--version'] => :version
|
9
|
-
|
10
|
-
desc 'install', 'Install Stratum (./stratum); `stratum help install` for options'
|
11
|
-
option :path, :type => :string, :aliases => '-p', :banner => './', :desc => 'Installation path'
|
12
|
-
option :force, :aliases => '-f', :type => :boolean, :desc => 'Force installation (overwrite existing)'
|
13
|
-
def install
|
14
|
-
if install_path.exist? && !options[:force]
|
15
|
-
puts "Stratum installation already exists. Use -f to force"
|
16
|
-
else
|
17
|
-
copy_files
|
18
|
-
puts "Stratum installed to #{install_path}"
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
desc 'update', 'Update Stratum'
|
23
|
-
def update
|
24
|
-
remove(true)
|
25
|
-
end
|
26
|
-
|
27
|
-
desc 'remove', 'Remove Stratum'
|
28
|
-
def remove(replace = false)
|
29
|
-
if stratum_exists?
|
30
|
-
FileUtils.rm_rf("stratum")
|
31
|
-
if replace
|
32
|
-
copy_files
|
33
|
-
puts "Stratum updated"
|
34
|
-
else
|
35
|
-
puts "Stratum has been removed"
|
36
|
-
end
|
37
|
-
else
|
38
|
-
puts "Stratum installation is not found in current directory"
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
desc 'version', 'Show Stratum version'
|
43
|
-
def version
|
44
|
-
say "Stratum #{Stratum::VERSION}"
|
45
|
-
end
|
46
|
-
|
47
|
-
private
|
48
|
-
|
49
|
-
def stratum_exists?
|
50
|
-
install_path.exist?
|
51
|
-
end
|
52
|
-
|
53
|
-
def install_path
|
54
|
-
@install_path ||= if options[:path]
|
55
|
-
Pathname.new(File.join(options[:path], 'stratum'))
|
56
|
-
else
|
57
|
-
Pathname.new('stratum')
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
def copy_files
|
62
|
-
FileUtils.mkdir_p(install_path)
|
63
|
-
FileUtils.cp_r(assets_stylesheets, install_path)
|
64
|
-
end
|
65
|
-
|
66
|
-
def assets_stylesheets
|
67
|
-
current_dir = File.dirname(File.dirname(__FILE__))
|
68
|
-
stylesheets = File.join(current_dir, "assets", "stylesheets")
|
69
|
-
|
70
|
-
Dir["#{stylesheets}/*"]
|
71
|
-
end
|
72
|
-
end
|
73
|
-
end
|
1
|
+
require 'stratum/generator'
|
2
|
+
require 'stratum/version'
|
data/stratum.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stratum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-02
|
12
|
+
date: 2013-03-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
16
|
-
requirement: &
|
16
|
+
requirement: &70230928584260 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70230928584260
|
25
25
|
description: Stratum is a collection of SASS mixins and utilities for your web development
|
26
26
|
needs.
|
27
27
|
email: tyom@semonov.com
|
@@ -30,56 +30,45 @@ executables:
|
|
30
30
|
extensions: []
|
31
31
|
extra_rdoc_files: []
|
32
32
|
files:
|
33
|
+
- .editorconfig
|
33
34
|
- .gitignore
|
34
|
-
- .gitmodules
|
35
35
|
- LICENSE
|
36
36
|
- README.md
|
37
|
+
- assets/stylesheets/_css3.scss
|
38
|
+
- assets/stylesheets/_helpers.scss
|
37
39
|
- assets/stylesheets/_stratum.scss
|
38
|
-
- assets/stylesheets/addons/_dimensions.scss
|
39
|
-
- assets/stylesheets/addons/_group.scss
|
40
|
-
- assets/stylesheets/addons/_position.scss
|
41
|
-
- assets/stylesheets/addons/_vendor-prefix.scss
|
42
40
|
- assets/stylesheets/css3/_animation.scss
|
43
41
|
- assets/stylesheets/css3/_border-radius.scss
|
44
42
|
- assets/stylesheets/css3/_box-sizing.scss
|
45
43
|
- assets/stylesheets/css3/_transform.scss
|
46
44
|
- assets/stylesheets/css3/_transition.scss
|
45
|
+
- assets/stylesheets/css3/_user-select.scss
|
47
46
|
- assets/stylesheets/forms/_input-placeholder.scss
|
48
|
-
- assets/stylesheets/
|
49
|
-
- assets/stylesheets/
|
50
|
-
- assets/stylesheets/
|
51
|
-
- assets/stylesheets/
|
47
|
+
- assets/stylesheets/helpers/_box.scss
|
48
|
+
- assets/stylesheets/helpers/_dimensions.scss
|
49
|
+
- assets/stylesheets/helpers/_group.scss
|
50
|
+
- assets/stylesheets/helpers/_icon-map.scss
|
51
|
+
- assets/stylesheets/helpers/_icons.scss
|
52
|
+
- assets/stylesheets/helpers/_position.scss
|
53
|
+
- assets/stylesheets/helpers/_triangle.scss
|
54
|
+
- assets/stylesheets/helpers/_vendor-prefix.scss
|
52
55
|
- assets/stylesheets/layout/_grid.scss
|
53
56
|
- assets/stylesheets/layout/_responsive.scss
|
57
|
+
- assets/stylesheets/layout/grid/_functions.scss
|
58
|
+
- assets/stylesheets/layout/grid/_guides.scss
|
59
|
+
- assets/stylesheets/layout/grid/_mixins.scss
|
60
|
+
- assets/stylesheets/layout/grid/_semantics.scss
|
61
|
+
- assets/stylesheets/layout/grid/semantics/_core.scss
|
62
|
+
- assets/stylesheets/layout/grid/semantics/_nested.scss
|
63
|
+
- assets/stylesheets/layout/grid/semantics/_offsets.scss
|
64
|
+
- assets/stylesheets/layout/grid/semantics/_overrides.scss
|
65
|
+
- assets/stylesheets/layout/grid/semantics/_subdivisions.scss
|
54
66
|
- assets/stylesheets/layout/scaffolding.scss
|
55
67
|
- bin/stratum
|
56
68
|
- lib/stratum.rb
|
57
|
-
- lib/
|
69
|
+
- lib/stratum/generator.rb
|
70
|
+
- lib/stratum/version.rb
|
58
71
|
- stratum.gemspec
|
59
|
-
- tests/Gemfile
|
60
|
-
- tests/Gemfile.lock
|
61
|
-
- tests/Guardfile
|
62
|
-
- tests/_config.yml
|
63
|
-
- tests/_includes/menu-grids.html
|
64
|
-
- tests/_includes/shared-grid-samples.html
|
65
|
-
- tests/_layouts/default.html
|
66
|
-
- tests/grid/arstechnica.html
|
67
|
-
- tests/grid/bbc.html
|
68
|
-
- tests/grid/fluid.html
|
69
|
-
- tests/grid/guardian.html
|
70
|
-
- tests/grid/index.html
|
71
|
-
- tests/grid/pixel.html
|
72
|
-
- tests/images/arstechnica.png
|
73
|
-
- tests/images/bbc.png
|
74
|
-
- tests/images/capture.js
|
75
|
-
- tests/images/guardian-home.png
|
76
|
-
- tests/scss/_mock-block.scss
|
77
|
-
- tests/scss/arstechnica.scss
|
78
|
-
- tests/scss/bbc.scss
|
79
|
-
- tests/scss/fluid-grid.scss
|
80
|
-
- tests/scss/guardian.scss
|
81
|
-
- tests/scss/main.scss
|
82
|
-
- tests/scss/pixel-grid.scss
|
83
72
|
homepage: http://rubygems.org/gems/stratum
|
84
73
|
licenses: []
|
85
74
|
post_install_message:
|
data/.gitmodules
DELETED
@@ -1,93 +0,0 @@
|
|
1
|
-
// Grid debugging tools: Guides
|
2
|
-
// ============================================================================
|
3
|
-
|
4
|
-
// Guides rely on `::before` pseudo element so the will only work on elements
|
5
|
-
// that don't already use it (e.g. not `group(true)`)
|
6
|
-
|
7
|
-
// Draws grid guides
|
8
|
-
@mixin grid-render-guides($grid-size: $grid-size, $grid-type: $grid-type) {
|
9
|
-
|
10
|
-
$v-block-size: 8;
|
11
|
-
|
12
|
-
// Pixel grid default values
|
13
|
-
$v-column-gutter: grid-column-gutter();
|
14
|
-
$v-column-width: grid-column-width();
|
15
|
-
$v-column-relative-width: grid-column-gutter() + grid-column-width();
|
16
|
-
|
17
|
-
@if $grid-type == fluid {
|
18
|
-
// Calculate gutter to column ratio
|
19
|
-
$v-gutter-ratio: $v-column-gutter / ($v-column-width + $v-column-gutter);
|
20
|
-
// Calculate column to grid width ratio
|
21
|
-
// not entirely sure where $v-column-gutter/3 magic number comes from, but it's necessary to make it work
|
22
|
-
$v-column-ratio: ($v-column-width + $v-column-gutter) / ($grid-size - $v-column-gutter / 3);
|
23
|
-
|
24
|
-
// Reset column size with percentages
|
25
|
-
$v-column-gutter: percentage($v-gutter-ratio);
|
26
|
-
$v-column-width: 100 - percentage($v-gutter-ratio);
|
27
|
-
$v-column-relative-width: percentage($v-column-ratio);
|
28
|
-
}
|
29
|
-
|
30
|
-
$v-column-gutter: $v-column-width + $v-column-gutter;
|
31
|
-
$v-block-height: (($grid-baseline + 1) * $v-block-size) + $grid-baseline;
|
32
|
-
|
33
|
-
position: relative;
|
34
|
-
|
35
|
-
&:before {
|
36
|
-
content: " ";
|
37
|
-
position: absolute;
|
38
|
-
top: 0;
|
39
|
-
left: 0;
|
40
|
-
right: 0;
|
41
|
-
bottom: 0;
|
42
|
-
|
43
|
-
background:
|
44
|
-
// Baseline (v-rhythm)
|
45
|
-
-webkit-linear-gradient(
|
46
|
-
transparent $grid-baseline,
|
47
|
-
rgba(white, $grid-guides-opacity) $grid-baseline),
|
48
|
-
// Columns
|
49
|
-
-webkit-linear-gradient(left,
|
50
|
-
rgba($grid-guides-color, $grid-guides-opacity),
|
51
|
-
rgba($grid-guides-color, $grid-guides-opacity) $v-column-width,
|
52
|
-
transparent $v-column-width,
|
53
|
-
transparent $v-column-gutter),
|
54
|
-
// Blocks
|
55
|
-
-webkit-linear-gradient(
|
56
|
-
transparent ($v-block-height - $grid-baseline),
|
57
|
-
rgba(white, $grid-guides-opacity / 1.2) $grid-baseline),
|
58
|
-
// Base colour
|
59
|
-
-webkit-linear-gradient(
|
60
|
-
rgba($grid-guides-color, $grid-guides-opacity),
|
61
|
-
rgba($grid-guides-color, $grid-guides-opacity));
|
62
|
-
|
63
|
-
background-size:
|
64
|
-
$v-column-gutter $grid-baseline + 1, // v-rhythm
|
65
|
-
$v-column-relative-width 10px, // column
|
66
|
-
$v-column-gutter ($v-block-height + 1); // block
|
67
|
-
}
|
68
|
-
}
|
69
|
-
|
70
|
-
// Show grid guides on all grid containers
|
71
|
-
@mixin GRID-GUIDES($position: back) {
|
72
|
-
%l-container {
|
73
|
-
@include show-grid-guides($position);
|
74
|
-
}
|
75
|
-
}
|
76
|
-
|
77
|
-
// Show grid guide on element
|
78
|
-
@mixin show-grid-guides($position: back) {
|
79
|
-
@include grid-render-guides($grid-size);
|
80
|
-
|
81
|
-
&::before {
|
82
|
-
// Grid placement (back by default)
|
83
|
-
@if $position == front {
|
84
|
-
z-index: 999;
|
85
|
-
} @else {
|
86
|
-
z-index: -1;
|
87
|
-
}
|
88
|
-
}
|
89
|
-
|
90
|
-
%l-container::before {
|
91
|
-
content: none;
|
92
|
-
}
|
93
|
-
}
|
@@ -1,79 +0,0 @@
|
|
1
|
-
@import "grid-functions";
|
2
|
-
|
3
|
-
// Grid initialisation
|
4
|
-
// -------------------
|
5
|
-
$grid-gutter: grid-column-gutter();
|
6
|
-
$grid-half-gutter: $grid-gutter / 2;
|
7
|
-
$grid-column: grid-column-width();
|
8
|
-
|
9
|
-
|
10
|
-
// Mixins
|
11
|
-
// ------
|
12
|
-
|
13
|
-
// Grid container to set grid bounds
|
14
|
-
@mixin grid-container($width: $grid-size) {
|
15
|
-
@include box-sizing(content-box);
|
16
|
-
@include group;
|
17
|
-
width: $width;
|
18
|
-
margin: {
|
19
|
-
left: auto;
|
20
|
-
right: auto;
|
21
|
-
}
|
22
|
-
}
|
23
|
-
|
24
|
-
// Grid row
|
25
|
-
// $type: <pixel|fluid>
|
26
|
-
@mixin grid-row($type: $grid-type) {
|
27
|
-
@include group;
|
28
|
-
@include grid-column-margins($type, -1);
|
29
|
-
clear: both;
|
30
|
-
}
|
31
|
-
|
32
|
-
// Converts into grid column
|
33
|
-
// $variation - can be normal, last, end, inner or centered
|
34
|
-
@mixin grid-column($type: $grid-type) {
|
35
|
-
@include box-sizing(border-box);
|
36
|
-
min-height: 1px;
|
37
|
-
float: left;
|
38
|
-
}
|
39
|
-
|
40
|
-
// Column margins
|
41
|
-
// $modifier: 1 - normal (column) margins
|
42
|
-
// $modifier: -1 - negative (row) margins
|
43
|
-
@mixin grid-column-margins($type: $grid-type, $modifier: 1) {
|
44
|
-
$v-gutter: 0;
|
45
|
-
|
46
|
-
@if $type == fluid {
|
47
|
-
$v-gutter: grid-percentage($grid-half-gutter * $modifier);
|
48
|
-
} @else if $type == pixel {
|
49
|
-
$v-gutter: $grid-half-gutter * $modifier;
|
50
|
-
} @else if $type == center {
|
51
|
-
$v-gutter: auto;
|
52
|
-
}
|
53
|
-
|
54
|
-
margin-left: $v-gutter;
|
55
|
-
margin-right: $v-gutter;
|
56
|
-
}
|
57
|
-
|
58
|
-
// Calculate single column width (in pixels) multipled by number of columns it spans (indluding gutters)
|
59
|
-
@mixin grid-column-width($span: 1, $type: $grid-type, $gutter: $grid-gutter, $total-columns: $grid-total-columns) {
|
60
|
-
width: grid-columns-width($span, $grid-column, $gutter, $type, $total-columns);
|
61
|
-
}
|
62
|
-
|
63
|
-
// Calculate offset width based on number of columns it spans (including gutters)
|
64
|
-
@mixin grid-offset-by-column($span: 1, $direction: left, $flow: positive, $grid-type: $grid-type) {
|
65
|
-
$v-offset: grid-columns-width($span, $type: $grid-type);
|
66
|
-
$v-gutter: $grid-gutter;
|
67
|
-
|
68
|
-
// Fluid grid
|
69
|
-
@if $grid-type == fluid {
|
70
|
-
$v-gutter: grid-percentage($v-gutter);
|
71
|
-
}
|
72
|
-
|
73
|
-
// Negative offset
|
74
|
-
@if $flow == negative {
|
75
|
-
margin-#{$direction}: -$v-offset - ($v-gutter / 2);
|
76
|
-
} @else {
|
77
|
-
margin-#{$direction}: $v-offset + ($v-gutter * 1.5);
|
78
|
-
}
|
79
|
-
}
|
@@ -1,266 +0,0 @@
|
|
1
|
-
// Semantic grid components
|
2
|
-
// ========================
|
3
|
-
|
4
|
-
// These placeholder selectors can be used to convert any element into
|
5
|
-
// grid component. To use extend element with appropriate placeholder.
|
6
|
-
// It will automatically take care of the parent and descending components
|
7
|
-
// as long as the correct grid components are used.
|
8
|
-
|
9
|
-
// You should think about this file as mapping between your styles and
|
10
|
-
// grid mixins and functions that calculate your individual grid elements
|
11
|
-
// from parameters you provide. It doesn't contain any values.
|
12
|
-
|
13
|
-
// The structure of the grid is as follows:
|
14
|
-
|
15
|
-
// %l-container – A grid is always contained in one of these
|
16
|
-
// They use global grid settings and can be overriden with:
|
17
|
-
// %l-grid-pixel – Force pixel grid
|
18
|
-
// %l-grid-fluid – Force fluid grid
|
19
|
-
// %l-gutterless – Collapse column margins (gutters)
|
20
|
-
//
|
21
|
-
// %l-row – Grid consists of a number of rows
|
22
|
-
// They are required for correct column margins, but can be omitted,
|
23
|
-
// in which case the grid with no `%l-row` becomes gutterless
|
24
|
-
//
|
25
|
-
// %l-col – Column, the unit of the grid
|
26
|
-
// %l-col-<$i> – Column size (e.g. `%l-col-4` spans four single columns, including three gutters)
|
27
|
-
// %l-col-<n>-of-<n> - Fractional column size of parent total (e.g. 2-of-8 is 2/8 and equals 25%)
|
28
|
-
// %l-col-center - Center column
|
29
|
-
//
|
30
|
-
// l-col-from-left-<$i> – Offset column by <column size> from left
|
31
|
-
// l-col-to-left-<$i> – Offset column by <column size> to left (negative margin)
|
32
|
-
// l-col-from-right-<$i> – Offset column by <column size> from right
|
33
|
-
// l-col-to-right-<$i> – Offset column by <column size> to right (negative margin)
|
34
|
-
//
|
35
|
-
// %l-last-col-right – This settings forces last column to float to right, which helps to eliminate
|
36
|
-
// pixel gap caused by rounding in fluid grids and ensures first and last column
|
37
|
-
// occupy full width of grid container.
|
38
|
-
// Applied to grid container (@extend).
|
39
|
-
|
40
|
-
// For examples of usage of these components see `scaffolding.scss` file.
|
41
|
-
|
42
|
-
|
43
|
-
// # Individual grid components
|
44
|
-
|
45
|
-
// Grid container
|
46
|
-
%l-container {
|
47
|
-
@include grid-container;
|
48
|
-
|
49
|
-
// Defines inner grid container (nested grid)
|
50
|
-
%l-container {
|
51
|
-
width: auto;
|
52
|
-
}
|
53
|
-
|
54
|
-
// Defines grid row
|
55
|
-
%l-row {
|
56
|
-
@include grid-row;
|
57
|
-
}
|
58
|
-
|
59
|
-
// Defines grid row of forced fluid grid
|
60
|
-
&%l-grid-fluid > %l-row, {
|
61
|
-
@include grid-row(fluid);
|
62
|
-
}
|
63
|
-
// Defines grid row of forced pixel grid
|
64
|
-
&%l-grid-pixel > %l-row {
|
65
|
-
@include grid-row(pixel);
|
66
|
-
}
|
67
|
-
|
68
|
-
// Always set nested grids to fluid
|
69
|
-
&%l-container %l-container > %l-row, {
|
70
|
-
@include grid-row(fluid);
|
71
|
-
}
|
72
|
-
|
73
|
-
// Defines row of gutterless grid
|
74
|
-
%l-gutterless {
|
75
|
-
&, %l-row {
|
76
|
-
margin: {
|
77
|
-
left: 0;
|
78
|
-
right: 0;
|
79
|
-
}
|
80
|
-
}
|
81
|
-
}
|
82
|
-
}
|
83
|
-
|
84
|
-
|
85
|
-
// Defines columns
|
86
|
-
%l-col {
|
87
|
-
@include grid-column;
|
88
|
-
|
89
|
-
%l-gutterless & {
|
90
|
-
margin-left: 0;
|
91
|
-
margin-right: 0;
|
92
|
-
}
|
93
|
-
}
|
94
|
-
|
95
|
-
|
96
|
-
// Float last column to right if `%l-last-col-right` extended
|
97
|
-
// Applied to `%l-container`
|
98
|
-
%l-col + %l-col:last-child {
|
99
|
-
%l-last-col-right%l-container > &,
|
100
|
-
%l-last-col-right%l-container > %l-row & {
|
101
|
-
float: right;
|
102
|
-
}
|
103
|
-
}
|
104
|
-
|
105
|
-
|
106
|
-
// Column spans
|
107
|
-
@for $i from 1 through $grid-total-columns {
|
108
|
-
%l-col-#{$i} {
|
109
|
-
@include grid-column-width($i, $grid-type);
|
110
|
-
|
111
|
-
// Force pixel grid
|
112
|
-
%l-grid-pixel > &,
|
113
|
-
%l-grid-pixel > %l-row > & {
|
114
|
-
@include grid-column-width($i, pixel);
|
115
|
-
@include grid-column-margins(pixel);
|
116
|
-
}
|
117
|
-
// Force fluid grid
|
118
|
-
%l-grid-fluid & {
|
119
|
-
@include grid-column-width($i, fluid);
|
120
|
-
@include grid-column-margins(fluid);
|
121
|
-
}
|
122
|
-
|
123
|
-
// Force gutterless grid
|
124
|
-
%l-gutterless &,
|
125
|
-
// Apply gutterless grid on columns without rows
|
126
|
-
%l-container > & {
|
127
|
-
@include grid-column-width($i, $grid-type, $gutter: 0);
|
128
|
-
@include grid-column-margins(0);
|
129
|
-
}
|
130
|
-
|
131
|
-
%l-grid-pixel > &,
|
132
|
-
%l-grid-pixel %l-gutterless & {
|
133
|
-
@include grid-column-width($i, pixel, $gutter: 0);
|
134
|
-
@include grid-column-margins(0);
|
135
|
-
}
|
136
|
-
%l-grid-fluid > &,
|
137
|
-
%l-grid-fluid %l-gutterless & {
|
138
|
-
@include grid-column-width($i, fluid, $gutter: 0);
|
139
|
-
@include grid-column-margins(0);
|
140
|
-
}
|
141
|
-
|
142
|
-
// TODO (fix inconsistent gutters betweeen pixel and fluid grids)
|
143
|
-
// Nested rows (for fluid grids)
|
144
|
-
// Since percentage value takes into account its parent container
|
145
|
-
// we need to adjust total column count to get the correct calculations
|
146
|
-
%l-grid-fluid & {
|
147
|
-
@for $n from 1 through $grid-total-columns {
|
148
|
-
%l-row %l-col-#{$n} {
|
149
|
-
@include grid-column-width($n, fluid, $total-columns: $i);
|
150
|
-
}
|
151
|
-
}
|
152
|
-
}
|
153
|
-
@if $grid-type == fluid {
|
154
|
-
@for $n from 1 through $grid-total-columns {
|
155
|
-
%l-row %l-col-#{$n} {
|
156
|
-
@include grid-column-width($n, fluid, $total-columns: $i);
|
157
|
-
}
|
158
|
-
}
|
159
|
-
}
|
160
|
-
}
|
161
|
-
}
|
162
|
-
|
163
|
-
// Column spans for custom grids
|
164
|
-
@for $i from 1 through $grid-total-columns {
|
165
|
-
@for $n from 1 through $grid-total-columns {
|
166
|
-
%l-col-#{$i}-of-#{$n} {
|
167
|
-
@include grid-column-width($i, fluid, $gutter: 0, $total-columns: $n);
|
168
|
-
}
|
169
|
-
}
|
170
|
-
}
|
171
|
-
|
172
|
-
|
173
|
-
// Centre column
|
174
|
-
%l-col-center {
|
175
|
-
%l-container &,
|
176
|
-
%l-grid-pixel &,
|
177
|
-
%l-grid-fluid &,
|
178
|
-
%l-gutterless & {
|
179
|
-
float: none;
|
180
|
-
margin-left: auto;
|
181
|
-
margin-right: auto;
|
182
|
-
}
|
183
|
-
}
|
184
|
-
|
185
|
-
|
186
|
-
// Defines column margins
|
187
|
-
// Only applied to descendants of rows
|
188
|
-
%l-row %l-col {
|
189
|
-
@include grid-column-margins;
|
190
|
-
}
|
191
|
-
|
192
|
-
|
193
|
-
// Column offsets
|
194
|
-
%l-container {
|
195
|
-
@for $i from 1 through $grid-total-columns {
|
196
|
-
// ## Grid with margins
|
197
|
-
// Default grid offsets
|
198
|
-
& > %l-row %l-col {
|
199
|
-
// From left
|
200
|
-
&%l-col-from-left-#{$i} {
|
201
|
-
@include grid-offset-by-column($i, left, positive, $grid-type);
|
202
|
-
}
|
203
|
-
|
204
|
-
// To left
|
205
|
-
&%l-col-to-left-#{$i} {
|
206
|
-
@include grid-offset-by-column($i, left, negative, $grid-type);
|
207
|
-
}
|
208
|
-
|
209
|
-
// From right
|
210
|
-
&%l-col-from-right-#{$i} {
|
211
|
-
@include grid-offset-by-column($i, right, positive, $grid-type);
|
212
|
-
}
|
213
|
-
|
214
|
-
// To right
|
215
|
-
&%l-col-to-right-#{$i} {
|
216
|
-
@include grid-offset-by-column($i, right, negative, $grid-type);
|
217
|
-
}
|
218
|
-
}
|
219
|
-
|
220
|
-
// Pixel grid offsets
|
221
|
-
&%l-grid-pixel > %l-row %l-col {
|
222
|
-
// From left
|
223
|
-
&%l-col-from-left-#{$i} {
|
224
|
-
@include grid-offset-by-column($i, left, positive, pixel);
|
225
|
-
}
|
226
|
-
|
227
|
-
// To left
|
228
|
-
&%l-col-to-left-#{$i} {
|
229
|
-
@include grid-offset-by-column($i, left, negative, pixel);
|
230
|
-
}
|
231
|
-
|
232
|
-
// From right
|
233
|
-
&%l-col-from-right-#{$i} {
|
234
|
-
@include grid-offset-by-column($i, right, positive, pixel);
|
235
|
-
}
|
236
|
-
|
237
|
-
// To right
|
238
|
-
&%l-col-to-right-#{$i} {
|
239
|
-
@include grid-offset-by-column($i, right, negative, pixel);
|
240
|
-
}
|
241
|
-
}
|
242
|
-
|
243
|
-
// Fluid grid offsets
|
244
|
-
&%l-grid-fluid > %l-row %l-col {
|
245
|
-
// From left
|
246
|
-
&%l-col-from-left-#{$i} {
|
247
|
-
@include grid-offset-by-column($i, left, positive, fluid);
|
248
|
-
}
|
249
|
-
|
250
|
-
// To left
|
251
|
-
&%l-col-to-left-#{$i} {
|
252
|
-
@include grid-offset-by-column($i, left, negative, fluid);
|
253
|
-
}
|
254
|
-
|
255
|
-
// From right
|
256
|
-
&%l-col-from-right-#{$i} {
|
257
|
-
@include grid-offset-by-column($i, right, positive, fluid);
|
258
|
-
}
|
259
|
-
|
260
|
-
// To right
|
261
|
-
&%l-col-to-right-#{$i} {
|
262
|
-
@include grid-offset-by-column($i, right, negative, fluid);
|
263
|
-
}
|
264
|
-
}
|
265
|
-
}
|
266
|
-
}
|
data/lib/version.rb
DELETED