compass 0.12.1 → 0.12.2.rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. data/README.markdown +15 -45
  2. data/VERSION.yml +3 -1
  3. data/features/command_line.feature +1 -0
  4. data/frameworks/compass/stylesheets/compass/_css3.scss +1 -0
  5. data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +6 -3
  6. data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +4 -10
  7. data/frameworks/compass/stylesheets/compass/css3/_columns.scss +18 -7
  8. data/frameworks/compass/stylesheets/compass/css3/_regions.scss +22 -0
  9. data/frameworks/compass/stylesheets/compass/css3/_transform.scss +6 -6
  10. data/frameworks/compass/stylesheets/compass/reset/_utilities.scss +4 -2
  11. data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +19 -11
  12. data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +25 -5
  13. data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +1 -1
  14. data/lib/compass/commands.rb +4 -3
  15. data/lib/compass/commands/extension_command.rb +60 -0
  16. data/lib/compass/configuration/adapters.rb +8 -2
  17. data/lib/compass/configuration/data.rb +1 -0
  18. data/lib/compass/exec/global_options_parser.rb +8 -1
  19. data/lib/compass/sass_extensions/functions/sprites.rb +10 -2
  20. data/lib/compass/version.rb +2 -1
  21. data/test/fixtures/stylesheets/blueprint/css/screen.css +2 -2
  22. data/test/fixtures/stylesheets/compass/css/border_radius.css +0 -6
  23. data/test/fixtures/stylesheets/compass/css/columns.css +15 -0
  24. data/test/fixtures/stylesheets/compass/css/regions.css +7 -0
  25. data/test/fixtures/stylesheets/compass/css/reset.css +2 -2
  26. data/test/fixtures/stylesheets/compass/css/transform.css +108 -0
  27. data/test/fixtures/stylesheets/compass/css/vertical_rhythm.css +5 -5
  28. data/test/fixtures/stylesheets/compass/sass/columns.scss +1 -0
  29. data/test/fixtures/stylesheets/compass/sass/regions.scss +4 -0
  30. data/test/integrations/sprites_test.rb +4 -4
  31. data/test/units/configuration_test.rb +15 -0
  32. metadata +51 -70
@@ -4,8 +4,9 @@ end
4
4
  require 'compass/commands/registry'
5
5
 
6
6
  %w(base generate_grid_background default help list_frameworks project_base
7
- update_project watch_project create_project clean_project imports installer_command
8
- print_version project_stats stamp_pattern sprite validate_project
9
- write_configuration interactive unpack_extension).each do |lib|
7
+ update_project watch_project create_project clean_project extension_command
8
+ imports installer_command print_version project_stats stamp_pattern
9
+ sprite validate_project write_configuration interactive unpack_extension
10
+ ).each do |lib|
10
11
  require "compass/commands/#{lib}"
11
12
  end
@@ -0,0 +1,60 @@
1
+ require 'fileutils'
2
+ require 'compass/commands/base'
3
+
4
+ module Compass
5
+ module Commands
6
+ module ExtensionsOptionParser
7
+ def set_options(opts)
8
+ opts.banner = %Q{
9
+ Usage: compass extension install EXTENSION_NAME [options]
10
+ compass extension uninstall EXTENSION_NAME [options]
11
+ compass extension list
12
+
13
+ Description:
14
+ Manage the list of extensions on your system.
15
+ Compass to all of your compass projects.
16
+
17
+ Example:
18
+ compass extension install sassy-buttons
19
+ compass extension uninstall sassy-buttons
20
+
21
+ }
22
+ super
23
+ end
24
+ end
25
+
26
+ class ExtensionCommand < Base
27
+
28
+ register :extension
29
+
30
+ class << self
31
+ def option_parser(arguments)
32
+ parser = Compass::Exec::CommandOptionParser.new(arguments)
33
+ parser.extend(ExtensionsOptionParser)
34
+ end
35
+ def usage
36
+ option_parser([]).to_s
37
+ end
38
+ def description(command)
39
+ "Manage the list of compass extensions on your system"
40
+ end
41
+ def parse!(arguments)
42
+ {:arguments => arguments}
43
+ end
44
+ end
45
+ include InstallerCommand
46
+
47
+ def initialize(working_path, options)
48
+ super(working_path, options)
49
+ end
50
+
51
+ # all commands must implement perform
52
+ def perform
53
+ require 'rubygems/gem_runner'
54
+ Gem::GemRunner.new.run(options[:arguments])
55
+ end
56
+
57
+ end
58
+ end
59
+ end
60
+
@@ -13,8 +13,13 @@ module Compass
13
13
  Compass::Frameworks::ALL.each do |framework|
14
14
  locations << [framework.stylesheets_directory, File.join(css_path || css_dir || ".", framework.name)]
15
15
  end
16
+ load_paths = []
16
17
  resolve_additional_import_paths.each do |additional_path|
17
- locations << [additional_path, File.join(css_path || css_dir || ".", File.basename(additional_path))]
18
+ if additional_path.is_a?(String)
19
+ locations << [additional_path, File.join(css_path || css_dir || ".", File.basename(additional_path))]
20
+ else
21
+ load_paths << additional_path
22
+ end
18
23
  end
19
24
  plugin_opts = {:template_location => locations}
20
25
  plugin_opts[:style] = output_style if output_style
@@ -23,13 +28,14 @@ module Compass
23
28
  plugin_opts[:cache_location] = cache_path unless cache_path.nil?
24
29
  plugin_opts.merge!(sass_options || {})
25
30
  plugin_opts[:load_paths] ||= []
31
+ plugin_opts[:load_paths] += load_paths
26
32
  plugin_opts[:load_paths] << Compass::SpriteImporter.new
27
33
  plugin_opts
28
34
  end
29
35
 
30
36
  def resolve_additional_import_paths
31
37
  (additional_import_paths || []).map do |path|
32
- if project_path && !absolute_path?(path)
38
+ if path.is_a?(String) && project_path && !absolute_path?(path)
33
39
  File.join(project_path, path)
34
40
  else
35
41
  path
@@ -79,6 +79,7 @@ module Compass
79
79
  end
80
80
 
81
81
  def add_import_path(*paths)
82
+ paths.map!{|p| defined?(Pathname) && Pathname === p ? p.to_s : p}
82
83
  # The @added_import_paths variable works around an issue where
83
84
  # the additional_import_paths gets overwritten during parse
84
85
  @added_import_paths ||= []
@@ -26,6 +26,13 @@ module Compass::Exec::GlobalOptionsParser
26
26
  ::Compass.configuration.discover Pathname.new(frameworks_dir).realpath
27
27
  end
28
28
 
29
+ opts.on('-I IMPORT_PATH',
30
+ "Makes files under the IMPORT_PATH folder findable by Sass's @import directive."
31
+ ) do |import_path|
32
+ require 'pathname'
33
+ ::Compass.configuration.add_import_path Pathname.new(import_path).realpath
34
+ end
35
+
29
36
  opts.on('-q', '--quiet', :NONE, 'Quiet mode.') do
30
37
  self.options[:quiet] = true
31
38
  end
@@ -34,7 +41,7 @@ module Compass::Exec::GlobalOptionsParser
34
41
  self.options[:trace] = true
35
42
  end
36
43
 
37
- opts.on('--force', :NONE, 'Allows some failing commands to succeed instead.') do
44
+ opts.on('--force', :NONE, 'Allows compass to overwrite existing files.') do
38
45
  self.options[:force] = true
39
46
  end
40
47
 
@@ -110,7 +110,7 @@ module Compass::SassExtensions::Functions::Sprites
110
110
  unless VALID_SELECTORS.include?(selector.value)
111
111
  raise Sass::SyntaxError, "Invalid Selctor did you mean one of: #{VALID_SELECTORS.join(', ')}"
112
112
  end
113
- Sass::Script::Bool.new map.send(:"has_#{selector.value}?", sprite)
113
+ Sass::Script::Bool.new map.send(:"has_#{selector.value}?", sprite.value)
114
114
  end
115
115
 
116
116
  Sass::Script::Functions.declare :sprite_has_selector, [:map, :sprite, :selector]
@@ -176,10 +176,18 @@ module Compass::SassExtensions::Functions::Sprites
176
176
 
177
177
  protected
178
178
 
179
+ def reversed_color_names
180
+ if Sass::Script::Color.const_defined?(:HTML4_COLORS_REVERSE)
181
+ Sass::Script::Color::HTML4_COLORS_REVERSE
182
+ else
183
+ Sass::Script::Color::COLOR_NAMES_REVERSE
184
+ end
185
+ end
186
+
179
187
  def convert_sprite_name(sprite)
180
188
  case sprite
181
189
  when Sass::Script::Color
182
- Sass::Script::String.new(Sass::Script::Color::HTML4_COLORS_REVERSE[sprite.rgb])
190
+ Sass::Script::String.new(reversed_color_names[sprite.rgb])
183
191
  when Sass::Script::Bool
184
192
  Sass::Script::String.new(sprite.to_s)
185
193
  else
@@ -26,8 +26,9 @@ module Compass
26
26
  @version[:teeny] = @version[:patch]
27
27
  @version[:string] = "#{@version[:major]}.#{@version[:minor]}"
28
28
  @version[:string] << ".#{@version[:patch]}" if @version[:patch]
29
- @version[:string] << ".#{@version[:state]}" if @version[:state]
30
29
  @version[:string] << ".#{@version[:build]}" if @version[:build]
30
+ @version[:string] << ".#{@version[:state]}" if @version[:state]
31
+ @version[:string] << ".#{@version[:iteration]}" if @version[:iteration]
31
32
  if !ENV['OFFICIAL'] && r = revision
32
33
  @version[:string] << ".#{r[0..6]}"
33
34
  end
@@ -14,11 +14,11 @@ time, mark, audio, video {
14
14
  margin: 0;
15
15
  padding: 0;
16
16
  border: 0;
17
- font-size: 100%;
18
17
  font: inherit;
18
+ font-size: 100%;
19
19
  vertical-align: baseline; }
20
20
 
21
- body {
21
+ html {
22
22
  line-height: 1; }
23
23
 
24
24
  ol, ul {
@@ -1,20 +1,14 @@
1
1
  .simple {
2
2
  -webkit-border-radius: 4px 4px;
3
3
  -moz-border-radius: 4px / 4px;
4
- -ms-border-radius: 4px / 4px;
5
- -o-border-radius: 4px / 4px;
6
4
  border-radius: 4px / 4px; }
7
5
 
8
6
  .compound {
9
7
  -webkit-border-radius: 2px 3px;
10
8
  -moz-border-radius: 2px 5px / 3px 6px;
11
- -ms-border-radius: 2px 5px / 3px 6px;
12
- -o-border-radius: 2px 5px / 3px 6px;
13
9
  border-radius: 2px 5px / 3px 6px; }
14
10
 
15
11
  .crazy {
16
12
  -webkit-border-radius: 1px 2px;
17
13
  -moz-border-radius: 1px 3px 5px 7px / 2px 4px 6px 8px;
18
- -ms-border-radius: 1px 3px 5px 7px / 2px 4px 6px 8px;
19
- -o-border-radius: 1px 3px 5px 7px / 2px 4px 6px 8px;
20
14
  border-radius: 1px 3px 5px 7px / 2px 4px 6px 8px; }
@@ -1,47 +1,62 @@
1
+ .columns {
2
+ -webkit-columns: 20em 5;
3
+ -moz-columns: 20em 5;
4
+ -ms-columns: 20em 5;
5
+ -o-columns: 20em 5;
6
+ columns: 20em 5; }
7
+
1
8
  .column-count {
2
9
  -webkit-column-count: 5;
3
10
  -moz-column-count: 5;
11
+ -ms-column-count: 5;
4
12
  -o-column-count: 5;
5
13
  column-count: 5; }
6
14
 
7
15
  .column-gap {
8
16
  -webkit-column-gap: 10px;
9
17
  -moz-column-gap: 10px;
18
+ -ms-column-gap: 10px;
10
19
  -o-column-gap: 10px;
11
20
  column-gap: 10px; }
12
21
 
13
22
  .column-width {
14
23
  -webkit-column-width: 90px;
15
24
  -moz-column-width: 90px;
25
+ -ms-column-width: 90px;
16
26
  -o-column-width: 90px;
17
27
  column-width: 90px; }
18
28
 
19
29
  .column-rule-width {
20
30
  -webkit-rule-width: 1px;
21
31
  -moz-rule-width: 1px;
32
+ -ms-rule-width: 1px;
22
33
  -o-rule-width: 1px;
23
34
  rule-width: 1px; }
24
35
 
25
36
  .column-rule-style {
26
37
  -webkit-rule-style: dotted;
27
38
  -moz-rule-style: dotted;
39
+ -ms-rule-style: dotted;
28
40
  -o-rule-style: dotted;
29
41
  rule-style: dotted; }
30
42
 
31
43
  .column-rule-color {
32
44
  -webkit-rule-color: blue;
33
45
  -moz-rule-color: blue;
46
+ -ms-rule-color: blue;
34
47
  -o-rule-color: blue;
35
48
  rule-color: blue; }
36
49
 
37
50
  .column-rule {
38
51
  -webkit-column-rule: 1px solid blue;
39
52
  -moz-column-rule: 1px solid blue;
53
+ -ms-column-rule: 1px solid blue;
40
54
  -o-column-rule: 1px solid blue;
41
55
  column-rule: 1px solid blue; }
42
56
 
43
57
  .column-rule-spaced {
44
58
  -webkit-column-rule: 1px solid blue;
45
59
  -moz-column-rule: 1px solid blue;
60
+ -ms-column-rule: 1px solid blue;
46
61
  -o-column-rule: 1px solid blue;
47
62
  column-rule: 1px solid blue; }
@@ -0,0 +1,7 @@
1
+ .source {
2
+ -webkit-flow-into: target;
3
+ -ms-flow-into: target; }
4
+
5
+ .new-container {
6
+ -webkit-flow-from: target;
7
+ -ms-flow-from: target; }
@@ -14,11 +14,11 @@ time, mark, audio, video {
14
14
  margin: 0;
15
15
  padding: 0;
16
16
  border: 0;
17
- font-size: 100%;
18
17
  font: inherit;
18
+ font-size: 100%;
19
19
  vertical-align: baseline; }
20
20
 
21
- body {
21
+ html {
22
22
  line-height: 1; }
23
23
 
24
24
  ol, ul {
@@ -7,6 +7,9 @@
7
7
 
8
8
  .apply-origin-3d {
9
9
  -webkit-transform-origin: 2px 5% 2in;
10
+ -moz-transform-origin: 2px 5% 2in;
11
+ -ms-transform-origin: 2px 5% 2in;
12
+ -o-transform-origin: 2px 5% 2in;
10
13
  transform-origin: 2px 5% 2in; }
11
14
 
12
15
  .transform-origin-2d {
@@ -18,6 +21,9 @@
18
21
 
19
22
  .transform-origin-3d {
20
23
  -webkit-transform-origin: 100px 100px 100px;
24
+ -moz-transform-origin: 100px 100px 100px;
25
+ -ms-transform-origin: 100px 100px 100px;
26
+ -o-transform-origin: 100px 100px 100px;
21
27
  transform-origin: 100px 100px 100px; }
22
28
 
23
29
  .transform-2d {
@@ -29,22 +35,37 @@
29
35
 
30
36
  .transform-3d {
31
37
  -webkit-transform: rotateZ(20deg);
38
+ -moz-transform: rotateZ(20deg);
39
+ -ms-transform: rotateZ(20deg);
40
+ -o-transform: rotateZ(20deg);
32
41
  transform: rotateZ(20deg); }
33
42
 
34
43
  .perspective {
35
44
  -webkit-perspective: 500;
45
+ -moz-perspective: 500;
46
+ -ms-perspective: 500;
47
+ -o-perspective: 500;
36
48
  perspective: 500; }
37
49
 
38
50
  .perspective-origin {
39
51
  -webkit-perspective-origin: 25% 25%;
52
+ -moz-perspective-origin: 25% 25%;
53
+ -ms-perspective-origin: 25% 25%;
54
+ -o-perspective-origin: 25% 25%;
40
55
  perspective-origin: 25% 25%; }
41
56
 
42
57
  .transform-style {
43
58
  -webkit-transform-style: preserve-3d;
59
+ -moz-transform-style: preserve-3d;
60
+ -ms-transform-style: preserve-3d;
61
+ -o-transform-style: preserve-3d;
44
62
  transform-style: preserve-3d; }
45
63
 
46
64
  .backface-visibility {
47
65
  -webkit-backface-visibility: hidden;
66
+ -moz-backface-visibility: hidden;
67
+ -ms-backface-visibility: hidden;
68
+ -o-backface-visibility: hidden;
48
69
  backface-visibility: hidden; }
49
70
 
50
71
  .scale {
@@ -56,6 +77,9 @@
56
77
 
57
78
  .scale-3d {
58
79
  -webkit-transform: scale(30px, 50px);
80
+ -moz-transform: scale(30px, 50px);
81
+ -ms-transform: scale(30px, 50px);
82
+ -o-transform: scale(30px, 50px);
59
83
  transform: scale(30px, 50px); }
60
84
 
61
85
  .scale-with-perspective {
@@ -67,6 +91,9 @@
67
91
 
68
92
  .scale-3d-with-perspective {
69
93
  -webkit-transform: perspective(500) scale(30px, 50px);
94
+ -moz-transform: perspective(500) scale(30px, 50px);
95
+ -ms-transform: perspective(500) scale(30px, 50px);
96
+ -o-transform: perspective(500) scale(30px, 50px);
70
97
  transform: perspective(500) scale(30px, 50px); }
71
98
 
72
99
  .scale-x {
@@ -78,6 +105,9 @@
78
105
 
79
106
  .scale-x-3d {
80
107
  -webkit-transform: scaleX(30px);
108
+ -moz-transform: scaleX(30px);
109
+ -ms-transform: scaleX(30px);
110
+ -o-transform: scaleX(30px);
81
111
  transform: scaleX(30px); }
82
112
 
83
113
  .scale-x-with-perspective {
@@ -89,6 +119,9 @@
89
119
 
90
120
  .scale-x-3d-with-perspective {
91
121
  -webkit-transform: perspective(500) scaleX(30px);
122
+ -moz-transform: perspective(500) scaleX(30px);
123
+ -ms-transform: perspective(500) scaleX(30px);
124
+ -o-transform: perspective(500) scaleX(30px);
92
125
  transform: perspective(500) scaleX(30px); }
93
126
 
94
127
  .scale-y {
@@ -100,6 +133,9 @@
100
133
 
101
134
  .scale-y-3d {
102
135
  -webkit-transform: scaleY(50px);
136
+ -moz-transform: scaleY(50px);
137
+ -ms-transform: scaleY(50px);
138
+ -o-transform: scaleY(50px);
103
139
  transform: scaleY(50px); }
104
140
 
105
141
  .scale-y-with-perspective {
@@ -111,22 +147,37 @@
111
147
 
112
148
  .scale-y-3d-with-perspective {
113
149
  -webkit-transform: perspective(500) scaleY(50px);
150
+ -moz-transform: perspective(500) scaleY(50px);
151
+ -ms-transform: perspective(500) scaleY(50px);
152
+ -o-transform: perspective(500) scaleY(50px);
114
153
  transform: perspective(500) scaleY(50px); }
115
154
 
116
155
  .scale-z {
117
156
  -webkit-transform: scaleZ(50px);
157
+ -moz-transform: scaleZ(50px);
158
+ -ms-transform: scaleZ(50px);
159
+ -o-transform: scaleZ(50px);
118
160
  transform: scaleZ(50px); }
119
161
 
120
162
  .scale-z-with-perspective {
121
163
  -webkit-transform: perspective(500) scaleZ(50px);
164
+ -moz-transform: perspective(500) scaleZ(50px);
165
+ -ms-transform: perspective(500) scaleZ(50px);
166
+ -o-transform: perspective(500) scaleZ(50px);
122
167
  transform: perspective(500) scaleZ(50px); }
123
168
 
124
169
  .scale3d {
125
170
  -webkit-transform: scale3d(30px, 50px, 100px);
171
+ -moz-transform: scale3d(30px, 50px, 100px);
172
+ -ms-transform: scale3d(30px, 50px, 100px);
173
+ -o-transform: scale3d(30px, 50px, 100px);
126
174
  transform: scale3d(30px, 50px, 100px); }
127
175
 
128
176
  .scaled3-with-perspective {
129
177
  -webkit-transform: perspective(500) scale3d(30px, 50px, 100px);
178
+ -moz-transform: perspective(500) scale3d(30px, 50px, 100px);
179
+ -ms-transform: perspective(500) scale3d(30px, 50px, 100px);
180
+ -o-transform: perspective(500) scale3d(30px, 50px, 100px);
130
181
  transform: perspective(500) scale3d(30px, 50px, 100px); }
131
182
 
132
183
  .rotate {
@@ -159,26 +210,44 @@
159
210
 
160
211
  .rotate-x {
161
212
  -webkit-transform: rotateX(25deg);
213
+ -moz-transform: rotateX(25deg);
214
+ -ms-transform: rotateX(25deg);
215
+ -o-transform: rotateX(25deg);
162
216
  transform: rotateX(25deg); }
163
217
 
164
218
  .rotate-x-with-perspective {
165
219
  -webkit-transform: perspective(500) rotateX(25deg);
220
+ -moz-transform: perspective(500) rotateX(25deg);
221
+ -ms-transform: perspective(500) rotateX(25deg);
222
+ -o-transform: perspective(500) rotateX(25deg);
166
223
  transform: perspective(500) rotateX(25deg); }
167
224
 
168
225
  .rotate-y {
169
226
  -webkit-transform: rotateY(25deg);
227
+ -moz-transform: rotateY(25deg);
228
+ -ms-transform: rotateY(25deg);
229
+ -o-transform: rotateY(25deg);
170
230
  transform: rotateY(25deg); }
171
231
 
172
232
  .rotate-y-with-perspective {
173
233
  -webkit-transform: perspective(500) rotateY(25deg);
234
+ -moz-transform: perspective(500) rotateY(25deg);
235
+ -ms-transform: perspective(500) rotateY(25deg);
236
+ -o-transform: perspective(500) rotateY(25deg);
174
237
  transform: perspective(500) rotateY(25deg); }
175
238
 
176
239
  .rotate-3d {
177
240
  -webkit-transform: rotate3d(5, 2, 1, 75deg);
241
+ -moz-transform: rotate3d(5, 2, 1, 75deg);
242
+ -ms-transform: rotate3d(5, 2, 1, 75deg);
243
+ -o-transform: rotate3d(5, 2, 1, 75deg);
178
244
  transform: rotate3d(5, 2, 1, 75deg); }
179
245
 
180
246
  .rotate-3d-with-perspective {
181
247
  -webkit-transform: perspective(500) rotate3d(5, 2, 1, 75deg);
248
+ -moz-transform: perspective(500) rotate3d(5, 2, 1, 75deg);
249
+ -ms-transform: perspective(500) rotate3d(5, 2, 1, 75deg);
250
+ -o-transform: perspective(500) rotate3d(5, 2, 1, 75deg);
182
251
  transform: perspective(500) rotate3d(5, 2, 1, 75deg); }
183
252
 
184
253
  .translate {
@@ -197,10 +266,16 @@
197
266
 
198
267
  .translate-3d {
199
268
  -webkit-transform: translate(20px, 30%);
269
+ -moz-transform: translate(20px, 30%);
270
+ -ms-transform: translate(20px, 30%);
271
+ -o-transform: translate(20px, 30%);
200
272
  transform: translate(20px, 30%); }
201
273
 
202
274
  .translate-3d-with-perspective {
203
275
  -webkit-transform: perspective(500) translate(20px, 30%);
276
+ -moz-transform: perspective(500) translate(20px, 30%);
277
+ -ms-transform: perspective(500) translate(20px, 30%);
278
+ -o-transform: perspective(500) translate(20px, 30%);
204
279
  transform: perspective(500) translate(20px, 30%); }
205
280
 
206
281
  .translate-x {
@@ -212,6 +287,9 @@
212
287
 
213
288
  .translate-x-3d {
214
289
  -webkit-transform: translateX(30px);
290
+ -moz-transform: translateX(30px);
291
+ -ms-transform: translateX(30px);
292
+ -o-transform: translateX(30px);
215
293
  transform: translateX(30px); }
216
294
 
217
295
  .translate-x-with-perspective {
@@ -223,6 +301,9 @@
223
301
 
224
302
  .translate-x-3d-with-perspective {
225
303
  -webkit-transform: perspective(500) translateX(30px);
304
+ -moz-transform: perspective(500) translateX(30px);
305
+ -ms-transform: perspective(500) translateX(30px);
306
+ -o-transform: perspective(500) translateX(30px);
226
307
  transform: perspective(500) translateX(30px); }
227
308
 
228
309
  .translate-y {
@@ -234,6 +315,9 @@
234
315
 
235
316
  .translate-y-3d {
236
317
  -webkit-transform: translateY(30px);
318
+ -moz-transform: translateY(30px);
319
+ -ms-transform: translateY(30px);
320
+ -o-transform: translateY(30px);
237
321
  transform: translateY(30px); }
238
322
 
239
323
  .translate-y-with-perspective {
@@ -245,22 +329,37 @@
245
329
 
246
330
  .translate-y-3d-with-perspective {
247
331
  -webkit-transform: perspective(500) translateY(30px);
332
+ -moz-transform: perspective(500) translateY(30px);
333
+ -ms-transform: perspective(500) translateY(30px);
334
+ -o-transform: perspective(500) translateY(30px);
248
335
  transform: perspective(500) translateY(30px); }
249
336
 
250
337
  .translate-z {
251
338
  -webkit-transform: translateZ(30px);
339
+ -moz-transform: translateZ(30px);
340
+ -ms-transform: translateZ(30px);
341
+ -o-transform: translateZ(30px);
252
342
  transform: translateZ(30px); }
253
343
 
254
344
  .translate-z-with-perspective {
255
345
  -webkit-transform: perspective(500) translateZ(30px);
346
+ -moz-transform: perspective(500) translateZ(30px);
347
+ -ms-transform: perspective(500) translateZ(30px);
348
+ -o-transform: perspective(500) translateZ(30px);
256
349
  transform: perspective(500) translateZ(30px); }
257
350
 
258
351
  .translate-3d {
259
352
  -webkit-transform: translate3d(30px, 50px, 75px);
353
+ -moz-transform: translate3d(30px, 50px, 75px);
354
+ -ms-transform: translate3d(30px, 50px, 75px);
355
+ -o-transform: translate3d(30px, 50px, 75px);
260
356
  transform: translate3d(30px, 50px, 75px); }
261
357
 
262
358
  .translate-3d-with-perspective {
263
359
  -webkit-transform: perspective(500) translate3d(30px, 50px, 75px);
360
+ -moz-transform: perspective(500) translate3d(30px, 50px, 75px);
361
+ -ms-transform: perspective(500) translate3d(30px, 50px, 75px);
362
+ -o-transform: perspective(500) translate3d(30px, 50px, 75px);
264
363
  transform: perspective(500) translate3d(30px, 50px, 75px); }
265
364
 
266
365
  .skew {
@@ -272,6 +371,9 @@
272
371
 
273
372
  .skew-3d {
274
373
  -webkit-transform: skew(20deg, 50deg);
374
+ -moz-transform: skew(20deg, 50deg);
375
+ -ms-transform: skew(20deg, 50deg);
376
+ -o-transform: skew(20deg, 50deg);
275
377
  transform: skew(20deg, 50deg); }
276
378
 
277
379
  .skew-x {
@@ -283,6 +385,9 @@
283
385
 
284
386
  .skew-x-3d {
285
387
  -webkit-transform: skewX(20deg);
388
+ -moz-transform: skewX(20deg);
389
+ -ms-transform: skewX(20deg);
390
+ -o-transform: skewX(20deg);
286
391
  transform: skewX(20deg); }
287
392
 
288
393
  .skew-y {
@@ -294,6 +399,9 @@
294
399
 
295
400
  .skew-y-3d {
296
401
  -webkit-transform: skewY(20deg);
402
+ -moz-transform: skewY(20deg);
403
+ -ms-transform: skewY(20deg);
404
+ -o-transform: skewY(20deg);
297
405
  transform: skewY(20deg); }
298
406
 
299
407
  .create-transform-2d {