less 3.6.0 → 3.8.1

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 (142) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/Gruntfile.js +43 -6
  3. package/bin/lessc +32 -3
  4. package/dist/less.js +2810 -326
  5. package/dist/less.min.js +7 -7
  6. package/lib/less/constants.js +13 -0
  7. package/lib/less/contexts.js +45 -10
  8. package/lib/less/default-options.js +12 -4
  9. package/lib/less/functions/color.js +84 -41
  10. package/lib/less/functions/data-uri.js +1 -1
  11. package/lib/less/functions/index.js +1 -0
  12. package/lib/less/functions/list.js +101 -0
  13. package/lib/less/functions/types.js +1 -19
  14. package/lib/less/import-manager.js +3 -3
  15. package/lib/less/index.js +1 -1
  16. package/lib/less/parse.js +3 -3
  17. package/lib/less/parser/parser.js +31 -13
  18. package/lib/less/render.js +2 -2
  19. package/lib/less/source-map-output.js +2 -2
  20. package/lib/less/tree/color.js +58 -18
  21. package/lib/less/tree/declaration.js +11 -7
  22. package/lib/less/tree/expression.js +7 -3
  23. package/lib/less/tree/import.js +9 -8
  24. package/lib/less/tree/mixin-definition.js +1 -1
  25. package/lib/less/tree/operation.js +10 -4
  26. package/lib/less/tree/url.js +12 -8
  27. package/lib/less/utils.js +54 -19
  28. package/lib/less-browser/add-default-options.js +3 -3
  29. package/lib/less-browser/index.js +9 -2
  30. package/lib/less-node/image-size.js +1 -1
  31. package/lib/less-node/lessc-helper.js +12 -4
  32. package/package.json +5 -2
  33. package/test/browser/css/rewrite-urls/urls.css +36 -0
  34. package/test/browser/css/rootpath-rewrite-urls/urls.css +35 -0
  35. package/test/browser/less/rewrite-urls/urls.less +34 -0
  36. package/test/browser/less/rootpath-rewrite-urls/urls.less +33 -0
  37. package/test/browser/less.js +2810 -326
  38. package/test/browser/runner-browser-options.js +1 -1
  39. package/test/browser/runner-errors-options.js +1 -1
  40. package/test/browser/runner-legacy-options.js +1 -1
  41. package/test/browser/runner-rewrite-urls-options.js +3 -0
  42. package/test/browser/runner-rewrite-urls-spec.js +3 -0
  43. package/test/browser/runner-rootpath-relative-spec.js +1 -1
  44. package/test/browser/runner-rootpath-rewrite-urls-options.js +4 -0
  45. package/test/browser/runner-rootpath-rewrite-urls-spec.js +3 -0
  46. package/test/css/calc.css +2 -2
  47. package/test/css/colors.css +20 -3
  48. package/test/css/css-3.css +0 -8
  49. package/test/css/css-escapes.css +3 -0
  50. package/test/css/functions-each.css +48 -0
  51. package/test/css/functions.css +6 -4
  52. package/test/css/math/parens-division/media-math.css +10 -0
  53. package/test/css/math/parens-division/mixins-args.css +169 -0
  54. package/test/css/math/parens-division/new-division.css +16 -0
  55. package/test/css/math/parens-division/parens.css +37 -0
  56. package/test/css/math/strict/css.css +95 -0
  57. package/test/css/math/strict/media-math.css +10 -0
  58. package/test/css/math/strict/mixins-args.css +169 -0
  59. package/test/css/math/strict/parens.css +37 -0
  60. package/test/css/{strict-math → math/strict-legacy}/css.css +0 -0
  61. package/test/css/math/strict-legacy/media-math.css +10 -0
  62. package/test/css/{strict-math → math/strict-legacy}/mixins-args.css +0 -0
  63. package/test/css/{strict-math → math/strict-legacy}/parens.css +5 -1
  64. package/test/css/no-strict-math/no-sm-operations.css +3 -0
  65. package/test/css/rewrite-urls-all/rewrite-urls-all.css +17 -0
  66. package/test/css/rewrite-urls-local/rewrite-urls-local.css +17 -0
  67. package/test/css/rootpath-rewrite-urls-all/rootpath-rewrite-urls-all.css +17 -0
  68. package/test/css/rootpath-rewrite-urls-local/rootpath-rewrite-urls-local.css +17 -0
  69. package/test/css/static-urls/urls.css +2 -2
  70. package/test/css/urls.css +2 -2
  71. package/test/index.js +28 -15
  72. package/test/less/colors.less +18 -0
  73. package/test/less/css-3.less +0 -9
  74. package/test/less/css-escapes.less +4 -0
  75. package/test/less/errors/color-func-invalid-color.txt +1 -1
  76. package/test/less/errors/mixin-not-defined-2.less +7 -0
  77. package/test/less/errors/mixin-not-defined-2.txt +4 -0
  78. package/test/less/functions-each.less +81 -0
  79. package/test/less/functions.less +14 -2
  80. package/test/less/math/parens-division/media-math.less +9 -0
  81. package/test/less/math/parens-division/mixins-args.less +264 -0
  82. package/test/less/math/parens-division/new-division.less +17 -0
  83. package/test/less/{strict-math → math/parens-division}/parens.less +2 -1
  84. package/test/less/math/strict/css.less +108 -0
  85. package/test/less/math/strict/media-math.less +9 -0
  86. package/test/less/math/strict/mixins-args.less +264 -0
  87. package/test/less/math/strict/parens.less +46 -0
  88. package/test/less/{strict-math → math/strict-legacy}/css.less +0 -0
  89. package/test/less/math/strict-legacy/media-math.less +9 -0
  90. package/test/less/{strict-math → math/strict-legacy}/mixins-args.less +0 -0
  91. package/test/less/math/strict-legacy/parens.less +50 -0
  92. package/test/less/no-strict-math/no-sm-operations.less +3 -0
  93. package/test/less/rewrite-urls-all/folder/file.less +8 -0
  94. package/test/less/rewrite-urls-all/rewrite-urls-all.less +11 -0
  95. package/test/less/rewrite-urls-local/folder/file.less +8 -0
  96. package/test/less/rewrite-urls-local/rewrite-urls-local.less +11 -0
  97. package/test/less/rootpath-rewrite-urls-all/folder/file.less +8 -0
  98. package/test/less/rootpath-rewrite-urls-all/rootpath-rewrite-urls-all.less +11 -0
  99. package/test/less/rootpath-rewrite-urls-local/folder/file.less +8 -0
  100. package/test/less/rootpath-rewrite-urls-local/rootpath-rewrite-urls-local.less +11 -0
  101. package/test/less/sourcemaps/custom-props.less +8 -0
  102. package/test/less-bom/colors.less +18 -0
  103. package/test/less-bom/css-3.less +0 -9
  104. package/test/less-bom/css-escapes.less +4 -0
  105. package/test/less-bom/errors/color-func-invalid-color.txt +1 -1
  106. package/test/less-bom/errors/mixin-not-defined-2.less +7 -0
  107. package/test/less-bom/errors/mixin-not-defined-2.txt +4 -0
  108. package/test/less-bom/functions-each.less +81 -0
  109. package/test/less-bom/functions.less +14 -2
  110. package/test/less-bom/math/parens-division/media-math.less +9 -0
  111. package/test/less-bom/math/parens-division/mixins-args.less +264 -0
  112. package/test/less-bom/math/parens-division/new-division.less +17 -0
  113. package/test/less-bom/{strict-math → math/parens-division}/parens.less +2 -1
  114. package/test/less-bom/math/strict/css.less +108 -0
  115. package/test/less-bom/math/strict/media-math.less +9 -0
  116. package/test/less-bom/math/strict/mixins-args.less +264 -0
  117. package/test/less-bom/math/strict/parens.less +46 -0
  118. package/test/less-bom/{strict-math → math/strict-legacy}/css.less +0 -0
  119. package/test/less-bom/math/strict-legacy/media-math.less +9 -0
  120. package/test/less-bom/{strict-math → math/strict-legacy}/mixins-args.less +0 -0
  121. package/test/less-bom/math/strict-legacy/parens.less +50 -0
  122. package/test/less-bom/no-strict-math/no-sm-operations.less +3 -0
  123. package/test/less-bom/rewrite-urls-all/folder/file.less +8 -0
  124. package/test/less-bom/rewrite-urls-all/rewrite-urls-all.less +11 -0
  125. package/test/less-bom/rewrite-urls-local/folder/file.less +8 -0
  126. package/test/less-bom/rewrite-urls-local/rewrite-urls-local.less +11 -0
  127. package/test/less-bom/rootpath-rewrite-urls-all/folder/file.less +8 -0
  128. package/test/less-bom/rootpath-rewrite-urls-all/rootpath-rewrite-urls-all.less +11 -0
  129. package/test/less-bom/rootpath-rewrite-urls-local/folder/file.less +8 -0
  130. package/test/less-bom/rootpath-rewrite-urls-local/rootpath-rewrite-urls-local.less +11 -0
  131. package/test/less-bom/sourcemaps/custom-props.less +8 -0
  132. package/test/less-test.js +26 -12
  133. package/test/sourcemaps/custom-props.json +1 -0
  134. package/.npmignore +0 -8
  135. package/test/less/errors/color-invalid-hex-code.less +0 -4
  136. package/test/less/errors/color-invalid-hex-code.txt +0 -4
  137. package/test/less/errors/color-invalid-hex-code2.less +0 -4
  138. package/test/less/errors/color-invalid-hex-code2.txt +0 -4
  139. package/test/less-bom/errors/color-invalid-hex-code.less +0 -4
  140. package/test/less-bom/errors/color-invalid-hex-code.txt +0 -4
  141. package/test/less-bom/errors/color-invalid-hex-code2.less +0 -4
  142. package/test/less-bom/errors/color-invalid-hex-code2.txt +0 -4
@@ -2,7 +2,7 @@ var less = {
2
2
  logLevel: 4,
3
3
  errorReporting: 'console',
4
4
  javascriptEnabled: true,
5
- strictMath: false
5
+ math: 'always'
6
6
  };
7
7
 
8
8
  // There originally run inside describe method. However, since they have not
@@ -1,6 +1,6 @@
1
1
  var less = {
2
2
  strictUnits: true,
3
- strictMath: true,
3
+ math: 'strict-legacy',
4
4
  logLevel: 4,
5
5
  javascriptEnabled: true
6
6
  };
@@ -1,6 +1,6 @@
1
1
  var less = {
2
2
  logLevel: 4,
3
3
  errorReporting: 'console',
4
- strictMath: false,
4
+ math: 'always',
5
5
  strictUnits: false
6
6
  };
@@ -0,0 +1,3 @@
1
+ var less = {logLevel: 4,
2
+ errorReporting: 'console'};
3
+ less.rewriteUrls = 'all';
@@ -0,0 +1,3 @@
1
+ describe("less.js browser test - rewrite urls", function() {
2
+ testLessEqualsInDocument();
3
+ });
@@ -1,3 +1,3 @@
1
- describe('less.js browser test - rootpath and relative url\'s', function() {
1
+ describe('less.js browser test - rootpath and relative urls', function() {
2
2
  testLessEqualsInDocument();
3
3
  });
@@ -0,0 +1,4 @@
1
+ var less = {logLevel: 4,
2
+ errorReporting: 'console'};
3
+ less.rootpath = 'https://www.github.com/cloudhead/less.js/';
4
+ less.rewriteUrls = 'all';
@@ -0,0 +1,3 @@
1
+ describe('less.js browser test - rootpath and rewrite urls', function() {
2
+ testLessEqualsInDocument();
3
+ });
package/test/css/calc.css CHANGED
@@ -3,12 +3,12 @@
3
3
  root2: calc(100% - 40px);
4
4
  width: calc(50% + (25vh - 20px));
5
5
  height: calc(50% + (25vh - 20px));
6
- min-height: calc((10vh) + calc(5vh));
6
+ min-height: calc(10vh + calc(5vh));
7
7
  foo: 3 calc(3 + 4) 11;
8
8
  bar: calc(1 + 20%);
9
9
  }
10
10
  .b {
11
- one: calc(100% - (20px));
11
+ one: calc(100% - 20px);
12
12
  two: calc(100% - (10px + 10px));
13
13
  three: calc(100% - (3 * 1));
14
14
  four: calc(100% - (3 * 1));
@@ -23,7 +23,7 @@
23
23
  color: #1a0000ff;
24
24
  }
25
25
  #alpha #hsla {
26
- color: rgba(61, 45, 41, 0.6);
26
+ color: hsla(11, 20%, 20%, 0.6);
27
27
  }
28
28
  #overflow .a {
29
29
  color: #000000;
@@ -47,10 +47,10 @@
47
47
  color: #333333;
48
48
  }
49
49
  #808080 {
50
- color: #808080;
50
+ color: hsl(0, 0%, 50%);
51
51
  }
52
52
  #00ff00 {
53
- color: #00ff00;
53
+ color: hsl(120, 100%, 50%);
54
54
  }
55
55
  .lightenblue {
56
56
  color: #3333ff;
@@ -85,3 +85,20 @@
85
85
  color: 255;
86
86
  border-color: rgba(255, 0, 0, 0.5);
87
87
  }
88
+ #rrggbbaa {
89
+ test-1: #55FF5599;
90
+ test-2: #5F59;
91
+ test-3: rgba(136, 255, 136, 0.6);
92
+ test-4: rgba(85, 255, 85, 0.1);
93
+ test-5: rgba(85, 255, 85, 0.6);
94
+ test-6: rgba(85, 255, 85, 0.6);
95
+ test-7: rgba(85, 255, 85, 0.5);
96
+ test-8: rgba(var(--color-accent), 0.2);
97
+ test-9: rgb(var(--color-accent));
98
+ test-9: hsla(var(--color-accent));
99
+ test-10: #55FF5599;
100
+ test-11: hsla(120, 100%, 66.66666667%, 0.6);
101
+ test-12: hsla(120, 100%, 66.66666667%, 0.5);
102
+ --semi-transparent-dark-background: #001e00ee;
103
+ --semi-transparent-dark-background-2: #001e00;
104
+ }
@@ -73,14 +73,6 @@ p::before {
73
73
  font-size: 12px;
74
74
  }
75
75
  }
76
- .units {
77
- font: 1.2rem/2rem;
78
- font: 8vw/9vw;
79
- font: 10vh/12vh;
80
- font: 12vm/15vm;
81
- font: 12vmin/15vmin;
82
- font: 1.2ch/1.5ch;
83
- }
84
76
  @supports ( box-shadow: 2px 2px 2px black ) or
85
77
  ( -moz-box-shadow: 2px 2px 2px black ) {
86
78
  .outline {
@@ -25,3 +25,6 @@ ng\:form {
25
25
  .bootstrap {
26
26
  background-color: #000 \9;
27
27
  }
28
+ textarea {
29
+ font-family: 'helvetica neue', 'wenquanyi micro hei', \5FAE\8F6F\96C5\9ED1, \5B8B\4F53, sans-serif;
30
+ }
@@ -0,0 +1,48 @@
1
+ .sel-blue {
2
+ a: b;
3
+ }
4
+ .sel-green {
5
+ a: b;
6
+ }
7
+ .sel-red {
8
+ a: b;
9
+ }
10
+ .each {
11
+ index: 1, 2, 3, 4;
12
+ item1: a;
13
+ item2: b;
14
+ item3: c;
15
+ item4: d;
16
+ nest-1-1: 10px 1;
17
+ nest-2-1: 15px 2;
18
+ nest-1-2: 20px 1;
19
+ nest-2-2: 25px 2;
20
+ padding: 10px 20px 30px 40px;
21
+ }
22
+ .each .nest-anon {
23
+ nest-1-1: a c;
24
+ nest-1-2: a d;
25
+ nest-2-1: b c;
26
+ nest-2-2: b d;
27
+ }
28
+ .set {
29
+ one: blue;
30
+ two: green;
31
+ three: red;
32
+ }
33
+ .set-2 {
34
+ one-1: blue;
35
+ two-2: green;
36
+ three-3: red;
37
+ }
38
+ .single {
39
+ val: true;
40
+ val2: 2;
41
+ val3: 4;
42
+ }
43
+ .box {
44
+ -less-log: a;
45
+ -less-log: b;
46
+ -less-log: c;
47
+ -less-log: d;
48
+ }
@@ -17,9 +17,9 @@
17
17
  desaturate: #29332f;
18
18
  desaturate-relative: #233930;
19
19
  greyscale: #2e2e2e;
20
- hsl-clamp: #ffffff;
21
- spin-p: #bf6a40;
22
- spin-n: #bf4055;
20
+ hsl-clamp: hsl(0, 0%, 100%);
21
+ spin-p: hsl(20, 50%, 50%);
22
+ spin-n: hsl(350, 50%, 50%);
23
23
  luma-white: 100%;
24
24
  luma-black: 0%;
25
25
  luma-black-alpha: 0%;
@@ -168,7 +168,7 @@
168
168
  case-insensitive-2: true;
169
169
  }
170
170
  #alpha {
171
- alpha: rgba(153, 94, 51, 0.6);
171
+ alpha: hsla(25, 50%, 40%, 0.6);
172
172
  alpha2: 0.5;
173
173
  alpha3: 0;
174
174
  }
@@ -228,4 +228,6 @@ html {
228
228
  j: 8;
229
229
  k: 1;
230
230
  /* results in void */
231
+ color: green;
232
+ color: purple;
231
233
  }
@@ -0,0 +1,10 @@
1
+ @media (min-width: 17) {
2
+ .foo {
3
+ bar: 1;
4
+ }
5
+ }
6
+ @media (min-width: 16 / 9) {
7
+ .foo {
8
+ bar: 1;
9
+ }
10
+ }
@@ -0,0 +1,169 @@
1
+ #hidden {
2
+ color: transparent;
3
+ }
4
+ #hidden1 {
5
+ color: transparent;
6
+ }
7
+ .two-args {
8
+ color: blue;
9
+ width: 10px;
10
+ height: 99%;
11
+ depth: 99%;
12
+ border: 2px dotted black;
13
+ }
14
+ .one-arg {
15
+ width: 15px;
16
+ height: 49%;
17
+ depth: 49%;
18
+ }
19
+ .no-parens {
20
+ width: 5px;
21
+ height: 49%;
22
+ depth: 49%;
23
+ }
24
+ .no-args {
25
+ width: 5px;
26
+ height: 49%;
27
+ depth: 49%;
28
+ }
29
+ .var-args {
30
+ width: 45;
31
+ height: 8%;
32
+ depth: 18 / 2 - 1%;
33
+ }
34
+ .multi-mix {
35
+ width: 10px;
36
+ height: 29%;
37
+ depth: 29%;
38
+ margin: 4;
39
+ padding: 5;
40
+ }
41
+ body {
42
+ padding: 30px;
43
+ color: #f00;
44
+ }
45
+ .scope-mix {
46
+ width: 8;
47
+ }
48
+ .content {
49
+ width: 600px;
50
+ }
51
+ .content .column {
52
+ margin: 600px;
53
+ }
54
+ #same-var-name {
55
+ radius: 5px;
56
+ }
57
+ #var-inside {
58
+ width: 10px;
59
+ }
60
+ .arguments {
61
+ border: 1px solid black;
62
+ width: 1px;
63
+ }
64
+ .arguments2 {
65
+ border: 0px;
66
+ width: 0px;
67
+ }
68
+ .arguments3 {
69
+ border: 0px;
70
+ width: 0px;
71
+ }
72
+ .arguments4 {
73
+ border: 0 1 2 3 4;
74
+ rest: 1 2 3 4;
75
+ width: 0;
76
+ }
77
+ .edge-case {
78
+ border: "{";
79
+ width: "{";
80
+ }
81
+ .slash-vs-math {
82
+ border-radius: 2px/5px;
83
+ border-radius: 5px/10px;
84
+ border-radius: 6px;
85
+ }
86
+ .comma-vs-semi-colon {
87
+ one: a;
88
+ two: b, c;
89
+ one: d, e;
90
+ two: f;
91
+ one: g;
92
+ one: h;
93
+ one: i;
94
+ one: j;
95
+ one: k;
96
+ two: l;
97
+ one: m, n;
98
+ one: o, p;
99
+ two: q;
100
+ one: r, s;
101
+ two: t;
102
+ }
103
+ #named-conflict {
104
+ four: a, 11, 12, 13;
105
+ four: a, 21, 22, 23;
106
+ }
107
+ .test-mixin-default-arg {
108
+ defaults: 1px 1px 1px;
109
+ defaults: 2px 2px 2px;
110
+ }
111
+ .selector {
112
+ margin: 2, 2, 2, 2;
113
+ }
114
+ .selector2 {
115
+ margin: 2, 2, 2, 2;
116
+ }
117
+ .selector3 {
118
+ margin: 4;
119
+ }
120
+ mixins-args-expand-op-1 {
121
+ m3: 1, 2, 3;
122
+ }
123
+ mixins-args-expand-op-2 {
124
+ m3: 4, 5, 6;
125
+ }
126
+ mixins-args-expand-op-3a {
127
+ m3: a, b, c;
128
+ }
129
+ mixins-args-expand-op-3b {
130
+ m4: 0, a, b, c;
131
+ }
132
+ mixins-args-expand-op-3c {
133
+ m4: a, b, c, 4;
134
+ }
135
+ mixins-args-expand-op-4a {
136
+ m3: a, b, c, d;
137
+ }
138
+ mixins-args-expand-op-4b {
139
+ m4: 0, a, b, c, d;
140
+ }
141
+ mixins-args-expand-op-4c {
142
+ m4: a, b, c, d, 4;
143
+ }
144
+ mixins-args-expand-op-5a {
145
+ m3: 1, 2, 3;
146
+ }
147
+ mixins-args-expand-op-5b {
148
+ m4: 0, 1, 2, 3;
149
+ }
150
+ mixins-args-expand-op-5c {
151
+ m4: 1, 2, 3, 4;
152
+ }
153
+ mixins-args-expand-op-6 {
154
+ m4: 0, 1, 2, 3;
155
+ }
156
+ mixins-args-expand-op-7 {
157
+ m4: 0, 1, 2, 3;
158
+ }
159
+ mixins-args-expand-op-8 {
160
+ m4: 1, 1.5, 2, 3;
161
+ }
162
+ mixins-args-expand-op-9 {
163
+ aa: 4 5 6 1 2 3 and again 4 5 6;
164
+ a4: and;
165
+ a8: 5;
166
+ }
167
+ #test-mixin-matching-when-default-2645 {
168
+ height: 20px;
169
+ }
@@ -0,0 +1,16 @@
1
+ .units {
2
+ font: 1.2rem/2rem;
3
+ font: 8vw/9vw;
4
+ font: 10vh/12vh;
5
+ font: 12vm/15vm;
6
+ font: 12vmin/15vmin;
7
+ font: 1.2ch/1.5ch;
8
+ }
9
+ .math {
10
+ a: 2;
11
+ b: 2px / 2;
12
+ c: 1px;
13
+ d: 1px;
14
+ e: 4px / 2;
15
+ f: 2px;
16
+ }
@@ -0,0 +1,37 @@
1
+ .parens {
2
+ border: 2px solid black;
3
+ margin: 1px 3px 16 3;
4
+ width: 36;
5
+ padding: 2px 36px;
6
+ }
7
+ .more-parens {
8
+ padding: 8 4 4 4px;
9
+ width-all: 96;
10
+ width-first: 96;
11
+ width-keep: 96;
12
+ height: calc(100% + (25vh - 20px));
13
+ height-keep: 113;
14
+ height-all: 113;
15
+ height-parts: 113;
16
+ margin-keep: 12;
17
+ margin-parts: 12;
18
+ margin-all: 12;
19
+ border-radius-keep: 8px / 4 + 3px;
20
+ border-radius-parts: 8px / 7px;
21
+ border-radius-all: 5px;
22
+ }
23
+ .negative {
24
+ neg-var: -1;
25
+ neg-var-paren: -1;
26
+ }
27
+ .nested-parens {
28
+ width: 71;
29
+ height: 6;
30
+ }
31
+ .mixed-units {
32
+ margin: 2px 4em 1 5pc;
33
+ padding: 6px 1em 2px 2;
34
+ }
35
+ .test-false-negatives {
36
+ a: (;
37
+ }
@@ -0,0 +1,95 @@
1
+ @charset "utf-8";
2
+ div {
3
+ color: black;
4
+ }
5
+ div {
6
+ width: 99%;
7
+ }
8
+ * {
9
+ min-width: 45em;
10
+ }
11
+ h1,
12
+ h2 > a > p,
13
+ h3 {
14
+ color: none;
15
+ }
16
+ div.class {
17
+ color: blue;
18
+ }
19
+ div#id {
20
+ color: green;
21
+ }
22
+ .class#id {
23
+ color: purple;
24
+ }
25
+ .one.two.three {
26
+ color: grey;
27
+ }
28
+ @media print {
29
+ * {
30
+ font-size: 3em;
31
+ }
32
+ }
33
+ @media screen {
34
+ * {
35
+ font-size: 10px;
36
+ }
37
+ }
38
+ @font-face {
39
+ font-family: 'Garamond Pro';
40
+ }
41
+ a:hover,
42
+ a:link {
43
+ color: #999;
44
+ }
45
+ p,
46
+ p:first-child {
47
+ text-transform: none;
48
+ }
49
+ q:lang(no) {
50
+ quotes: none;
51
+ }
52
+ p + h1 {
53
+ font-size: 2.2em;
54
+ }
55
+ #shorthands {
56
+ border: 1px solid #000;
57
+ font: 12px/16px Arial;
58
+ font: 100%/16px Arial;
59
+ margin: 1px 0;
60
+ padding: 0 auto;
61
+ }
62
+ #more-shorthands {
63
+ margin: 0;
64
+ padding: 1px 0 2px 0;
65
+ font: normal small / 20px 'Trebuchet MS', Verdana, sans-serif;
66
+ font: 0/0 a;
67
+ border-radius: 5px / 10px;
68
+ }
69
+ .misc {
70
+ -moz-border-radius: 2px;
71
+ display: -moz-inline-stack;
72
+ width: 0.1em;
73
+ background-color: #009998;
74
+ background: -webkit-gradient(linear, left top, left bottom, from(red), to(blue));
75
+ margin: ;
76
+ filter: alpha(opacity=100);
77
+ width: auto\9;
78
+ }
79
+ .misc .nested-multiple {
80
+ multiple-semi-colons: yes;
81
+ }
82
+ #important {
83
+ color: red !important;
84
+ width: 100%!important;
85
+ height: 20px ! important;
86
+ }
87
+ @font-face {
88
+ font-family: font-a;
89
+ }
90
+ @font-face {
91
+ font-family: font-b;
92
+ }
93
+ .æøå {
94
+ margin: 0;
95
+ }
@@ -0,0 +1,10 @@
1
+ @media (min-width: 16 + 1) {
2
+ .foo {
3
+ bar: 1;
4
+ }
5
+ }
6
+ @media (min-width: 16 / 9) {
7
+ .foo {
8
+ bar: 1;
9
+ }
10
+ }