Warning, file /frameworks/syntax-highlighting/autotests/html/highlight.less.html was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>highlight.less</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (LESSCSS) - Theme (Breeze Light)"/>
0006 </head><body style="background-color:#ffffff;color:#1f1c1b"><pre>
0007 <span style="color:#898887;">/**</span>
0008 <span style="color:#898887;"> * Less syntax highlighting test file</span>
0009 <span style="color:#898887;"> *</span>
0010 <span style="color:#898887;"> * Based on the Less documentation ((c) 2017 Alexis Sellier, the Less Core Team, Contributors, The MIT License)</span>
0011 <span style="color:#898887;"> *</span>
0012 <span style="color:#898887;"> * @see http://lesscss.org/features/</span>
0013 <span style="color:#898887;"> */</span>
0014 
0015 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@color</span>; <span style="color:#0057ae;">@padding</span>; <span style="color:#0057ae;">@margin</span>: <span style="color:#b08000;">2</span>) {
0016   <span style="font-style:italic;">colorr</span>: <span style="color:#0057ae;">@color</span>;
0017   padding-3<span style="color:#b08000;">:</span> <span style="color:#ff5500;">@padding</span>;
0018   <span style="font-weight:bold;">margin</span>: <span style="color:#0057ae;">@margin</span> <span style="color:#0057ae;">@margin</span> <span style="color:#0057ae;">@margin</span> <span style="color:#0057ae;">@margin</span>;
0019 }
0020 
0021 <span style="color:#0057ae;">@my-ruleset:</span> {
0022   <span style="color:#644a9b;">.my-selector</span> {
0023     <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">black</span>;
0024   }
0025 };
0026 
0027 <span style="color:#0057ae;">@bacon:</span> <span style="color:#aa5500;">red</span>;
0028 <span style="color:#0057ae;">@beacon:</span> background-color;
0029 <span style="color:#0057ae;">@baecon:</span> <span style="color:#0057ae;">@{w}</span> + <span style="color:#0057ae;">@w</span>;
0030 
0031 <span style="color:#644a9b;">.noStar</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.class</span> <span style="color:#006e28;font-weight:bold;">#sh</span><span style="color:#b08000;">:extend</span>(<span style="color:#006e28;font-weight:bold;">#hhh</span>) ) {}
0032 <span style="color:#644a9b;">.noStar</span><span style="color:#b08000;">:nth-child</span>(w: <span style="color:#aa5500;">red</span>) {}
0033 
0034 <span style="color:#ff5500;">@media</span> (<span style="font-weight:bold;">max-width</span>: <span style="color:#0057ae;">@width2</span>) <span style="font-weight:bold;">and</span> <span style="color:#b08000;">handheld</span> {
0035   <span style="font-weight:bold;">height</span>: <span style="color:#644a9b;font-weight:bold;">auto</span>;
0036 }
0037 
0038 <span style="color:#644a9b;">.test</span> <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@color</span> = <span style="color:#aa5500;">blue</span>) <span style="color:#644a9b;">.ffff</span> {<span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">red</span>;}
0039 
0040 <span style="color:#644a9b;">.foo</span> (<span style="color:#0057ae;">@bg</span>: <span style="color:#aa5500;">#f5f5f5</span>, <span style="color:#0057ae;">@color</span>: <span style="color:#aa5500;">#900</span>) {
0041   <span style="font-weight:bold;">background</span>: <span style="color:#0057ae;">@bg</span>;
0042   <span style="font-weight:bold;">color</span>: <span style="color:#0057ae;">@color</span>;
0043 
0044   <span style="color:#644a9b;">.x</span> {
0045     <span style="font-style:italic;">x</span>: <span style="color:#0057ae;">@nn</span>;
0046     <span style="font-style:italic;">a</span>: <span style="color:#aa5500;">white</span> <span style="color:#0057ae;">@{nn@{ww}}</span>;
0047     <span style="font-weight:bold;">background</span>: <span style="color:#aa5500;">red</span>;
0048   }
0049 }
0050 
0051 <span style="color:#898887;">// Variables</span>
0052 
0053 <span style="color:#0057ae;">@link-color:</span>        <span style="color:#aa5500;">#428bca</span>; <span style="color:#898887;">// sea blue</span>
0054 <span style="color:#0057ae;">@link-color-hover:</span>  <span style="color:#644a9b;font-weight:bold;">darken</span>(<span style="color:#0057ae;">@link-color</span>, <span style="color:#b08000;">10</span><span style="color:#0057ae;">%</span>);
0055 
0056 a, <span style="color:#644a9b;">.link</span> {
0057   <span style="font-weight:bold;">color</span>: <span style="color:#0057ae;">@link-color</span>;
0058 }
0059 
0060 a<span style="color:#b08000;">:hover</span> {
0061   <span style="font-weight:bold;">color</span>: <span style="color:#0057ae;">@link-color-hover</span>;
0062 }
0063 
0064 <span style="color:#644a9b;">.widget</span> {
0065   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">#fff</span>;
0066   <span style="font-weight:bold;">background</span>: <span style="color:#0057ae;">@link-color</span>;
0067 }
0068 
0069 <span style="color:#898887;">// Variable interpolation</span>
0070 
0071 <span style="color:#0057ae;">@my-selector:</span> banner;
0072 
0073 <span style="color:#644a9b;">.</span><span style="color:#0057ae;">@{my-selector}</span> <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@s</span> = <span style="color:#644a9b;font-weight:bold;">calc</span>(<span style="color:#bf0303;">&quot;s&quot;</span>); <span style="color:#0057ae;">@{s}</span> = <span style="color:#644a9b;font-weight:bold;">calc</span>(<span style="color:#bf0303;">&quot;dddd&quot;</span>)) {
0074   <span style="font-weight:bold;">font-weight</span>: <span style="color:#b08000;">bold</span>;
0075   <span style="font-weight:bold;">line-height</span>+: <span style="color:#b08000;">40</span><span style="color:#0057ae;">px</span>;
0076   <span style="font-weight:bold;">margin</span>: <span style="color:#b08000;">0</span> <span style="color:#644a9b;font-weight:bold;">auto</span>;
0077 }
0078 
0079 <span style="color:#0057ae;">@images:</span> <span style="color:#bf0303;">&quot;../img&quot;</span>;
0080 
0081 body {
0082   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">#444</span>;
0083   <span style="font-weight:bold;">background</span>: <span style="color:#644a9b;font-weight:bold;">url</span>(<span style="color:#bf0303;">&quot;</span><span style="color:#0057ae;">@{images}</span><span style="color:#bf0303;">/white-sand.png&quot;</span>);
0084 }
0085 
0086 <span style="color:#0057ae;">@themes:</span> <span style="color:#bf0303;">&quot;../../src/themes&quot;</span>;
0087 
0088 <span style="color:#ff5500;">@import</span> <span style="color:#bf0303;">&quot;</span><span style="color:#0057ae;">@{themes}</span><span style="color:#bf0303;">/tidal-wave.less&quot;</span>;
0089 
0090 <span style="color:#0057ae;">@property:</span> color;
0091 
0092 <span style="color:#644a9b;">.widget</span> {
0093   <span style="color:#0057ae;">@{property}</span>: <span style="color:#aa5500;">#0ee</span>;
0094   <span style="font-style:italic;">background-</span><span style="color:#0057ae;">@{property}</span>: <span style="color:#aa5500;">#999</span>;
0095 }
0096 
0097 <span style="color:#898887;">// Variable names</span>
0098 
0099 <span style="color:#0057ae;">@fnord:</span>  <span style="color:#bf0303;">&quot;I am fnord.&quot;</span>;
0100 <span style="color:#0057ae;">@var:</span>    <span style="color:#bf0303;">&quot;fnord&quot;</span>;
0101 
0102 <span style="color:#644a9b;">.variable-names-example</span> {
0103   <span style="font-weight:bold;">content</span>: <span style="color:#0057ae;">@@var</span>;
0104 }
0105 
0106 <span style="color:#898887;">// Lazy Evaluation</span>
0107 
0108 <span style="color:#644a9b;">.lazy-eval</span> {
0109   <span style="font-weight:bold;">width</span>: <span style="color:#0057ae;">@var</span>;
0110 }
0111 
0112 <span style="color:#0057ae;">@var:</span> <span style="color:#0057ae;">@a</span>;
0113 <span style="color:#0057ae;">@a:</span> <span style="color:#b08000;">9</span><span style="color:#0057ae;">%</span>;
0114 
0115 <span style="color:#0057ae;">@var:</span> <span style="color:#b08000;">0</span>;
0116 <span style="color:#644a9b;">.class</span> {
0117   <span style="color:#0057ae;">@var:</span> <span style="color:#b08000;">1</span>;
0118   <span style="color:#644a9b;">.brass</span> {
0119     <span style="color:#0057ae;">@var:</span> <span style="color:#b08000;">2</span>;
0120     <span style="font-style:italic;">three</span>: <span style="color:#0057ae;">@var</span>;
0121     <span style="color:#0057ae;">@var:</span> <span style="color:#b08000;">3</span>;
0122   }
0123   <span style="font-style:italic;">one</span>: <span style="color:#0057ae;">@var</span>;
0124 }
0125 
0126 <span style="color:#898887;">// Default Variables</span>
0127 
0128 <span style="color:#0057ae;">@base-color:</span> <span style="color:#aa5500;">green</span>;
0129 <span style="color:#0057ae;">@dark-color:</span> <span style="color:#644a9b;font-weight:bold;">darken</span>(<span style="color:#0057ae;">@base-color</span>, <span style="color:#b08000;">10</span><span style="color:#0057ae;">%</span>);
0130 
0131 <span style="color:#ff5500;">@import</span> <span style="color:#bf0303;">&quot;library.less&quot;</span>;
0132 <span style="color:#0057ae;">@base-color:</span> <span style="color:#aa5500;">red</span>;
0133 
0134 <span style="color:#898887;">// Extend</span>
0135 
0136 nav ul {
0137   &amp;<span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.inline</span>);
0138   <span style="font-weight:bold;">background</span>: <span style="color:#aa5500;">blue</span>;
0139 }
0140 <span style="color:#644a9b;">.inline</span> {
0141   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">red</span>;
0142 }
0143 
0144 <span style="color:#898887;">// Extend Syntax</span>
0145 
0146 <span style="color:#644a9b;">.e</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.f</span>) {}
0147 <span style="color:#644a9b;">.e</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.g</span>) {}
0148 
0149 <span style="color:#644a9b;">.e</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.f</span>, <span style="color:#644a9b;">.g</span>) {}
0150 
0151 <span style="color:#898887;">// Extend Attached to Selector</span>
0152 
0153 <span style="color:#644a9b;">.big-division</span>,
0154 <span style="color:#644a9b;">.big-bag</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.bag</span>),
0155 <span style="color:#644a9b;">.big-bucket</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.bucket</span>) {
0156 }
0157 
0158 <span style="color:#898887;">// Extend Inside Ruleset</span>
0159 
0160 pre<span style="color:#b08000;">:hover</span>,
0161 <span style="color:#644a9b;">.some-class</span> {
0162   &amp;<span style="color:#b08000;">:extend</span>(div pre);
0163 }
0164 
0165 pre<span style="color:#b08000;">:hover:extend</span>(div pre),
0166 <span style="color:#644a9b;">.some-class</span><span style="color:#b08000;">:extend</span>(div pre) {}
0167 
0168 <span style="color:#898887;">// Extending Nested Selectors</span>
0169 
0170 <span style="color:#644a9b;">.bucket</span> {
0171   tr {
0172     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0173   }
0174 }
0175 <span style="color:#644a9b;">.some-class</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.bucket</span> tr) {}
0176 
0177 <span style="color:#898887;">// Exact Matching with Extend</span>
0178 
0179 *<span style="color:#644a9b;">.class</span> {
0180   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0181 }
0182 <span style="color:#644a9b;">.noStar</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.class</span>) {}
0183 
0184 link<span style="color:#b08000;">:hover:visited</span> {
0185   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0186 }
0187 <span style="color:#644a9b;">.selector</span><span style="color:#b08000;">:extend</span>(link<span style="color:#b08000;">:visited:hover</span>) {}
0188 
0189 <span style="color:#898887;">// nth Expression</span>
0190 
0191 <span style="color:#b08000;">:nth-child</span>(<span style="color:#b08000;">1</span>n<span style="color:#b08000;">+3</span>) {
0192   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0193 }
0194 <span style="color:#644a9b;">.child</span><span style="color:#b08000;">:extend</span>(<span style="color:#b08000;">:nth-child</span>(n+3)) {}
0195 
0196 <span style="color:#0095ff;font-weight:bold;">[title=identifier]</span> {
0197   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0198 }
0199 <span style="color:#0095ff;font-weight:bold;">[title=</span><span style="color:#bf0303;">'identifier'</span><span style="color:#0095ff;font-weight:bold;">]</span> {
0200   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0201 }
0202 <span style="color:#0095ff;font-weight:bold;">[title=</span><span style="color:#bf0303;">&quot;identifier&quot;</span><span style="color:#0095ff;font-weight:bold;">]</span> {
0203   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0204 }
0205 
0206 <span style="color:#644a9b;">.noQuote</span><span style="color:#b08000;">:extend</span>(<span style="color:#0095ff;font-weight:bold;">[title=identifier]</span>) {}
0207 <span style="color:#644a9b;">.singleQuote</span><span style="color:#b08000;">:extend</span>(<span style="color:#0095ff;font-weight:bold;">[title=</span><span style="color:#bf0303;">'identifier'</span><span style="color:#0095ff;font-weight:bold;">]</span>) {}
0208 <span style="color:#644a9b;">.doubleQuote</span><span style="color:#b08000;">:extend</span>(<span style="color:#0095ff;font-weight:bold;">[title=</span><span style="color:#bf0303;">&quot;identifier&quot;</span><span style="color:#0095ff;font-weight:bold;">]</span>) {}
0209 
0210 <span style="color:#898887;">// Extend &quot;all&quot;</span>
0211 
0212 <span style="color:#644a9b;">.a.b.test</span>,
0213 <span style="color:#644a9b;">.test.c</span> {
0214   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">orange</span>;
0215 }
0216 <span style="color:#644a9b;">.test</span> {
0217   &amp;<span style="color:#b08000;">:hover</span> {
0218     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">green</span>;
0219   }
0220 }
0221 
0222 <span style="color:#644a9b;">.replacement</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.test</span> all) {}
0223 
0224 <span style="color:#898887;">// Selector Interpolation with Extend</span>
0225 
0226 <span style="color:#644a9b;">.bucket</span> {
0227   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0228 }
0229 <span style="color:#0057ae;">@{variable}</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.bucket</span>) {}
0230 <span style="color:#0057ae;">@variable:</span> <span style="color:#b08000;">.</span>selector;
0231 
0232 <span style="color:#898887;">// Scoping / Extend Inside @media</span>
0233 
0234 <span style="color:#ff5500;">@media</span> <span style="color:#b08000;">print</span> {
0235   <span style="color:#644a9b;">.screenClass</span><span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.selector</span>) {}
0236   <span style="color:#644a9b;">.selector</span> {
0237     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">black</span>;
0238   }
0239 }
0240 <span style="color:#644a9b;">.selector</span> {
0241   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">red</span>;
0242 }
0243 <span style="color:#ff5500;">@media</span> <span style="color:#b08000;">screen</span> {
0244   <span style="color:#644a9b;">.selector</span> {
0245     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0246   }
0247 }
0248 
0249 <span style="color:#898887;">// Use Cases for Extend</span>
0250 
0251 <span style="color:#644a9b;">.animal</span> {
0252   <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">black</span>;
0253   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">white</span>;
0254 }
0255 <span style="color:#644a9b;">.bear</span> {
0256   &amp;<span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.animal</span>);
0257   <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">brown</span>;
0258 }
0259 
0260 <span style="color:#644a9b;">.my-inline-block</span> {
0261   <span style="font-weight:bold;">display</span>: <span style="color:#b08000;">inline-block</span>;
0262   <span style="font-weight:bold;">font-size</span>: <span style="color:#b08000;">0</span>;
0263 }
0264 <span style="color:#644a9b;">.thing1</span> {
0265   &amp;<span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.my-inline-block</span>);
0266 }
0267 <span style="color:#644a9b;">.thing2</span> {
0268   &amp;<span style="color:#b08000;">:extend</span>(<span style="color:#644a9b;">.my-inline-block</span>);
0269 }
0270 
0271 <span style="color:#898887;">// Mixins</span>
0272 
0273 <span style="color:#644a9b;">.a</span>, <span style="color:#006e28;font-weight:bold;">#b</span> {
0274   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">red</span>;
0275 }
0276 <span style="color:#644a9b;">.mixin-class</span> {
0277   <span style="color:#644a9b;">.a</span>();
0278 }
0279 <span style="color:#644a9b;">.mixin-id</span> {
0280   <span style="color:#006e28;font-weight:bold;">#b</span>();
0281 }
0282 
0283 <span style="color:#898887;">// Not Outputting the Mixin</span>
0284 
0285 <span style="color:#644a9b;">.my-mixin</span> {
0286   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">black</span>;
0287 }
0288 <span style="color:#644a9b;">.my-other-mixin</span>() {
0289   <span style="font-weight:bold;">background</span>: <span style="color:#aa5500;">white</span>;
0290 }
0291 <span style="color:#644a9b;">.class</span> {
0292   <span style="color:#644a9b;">.my-mixin</span>;
0293   <span style="color:#644a9b;">.my-other-mixin</span>;
0294 }
0295 
0296 <span style="color:#898887;">// Selectors in Mixins</span>
0297 
0298 <span style="color:#644a9b;">.my-hover-mixin</span>() {
0299   &amp;<span style="color:#b08000;">:hover</span> {
0300     <span style="font-weight:bold;">border</span>: <span style="color:#b08000;">1</span><span style="color:#0057ae;">px</span> <span style="color:#b08000;">solid</span> <span style="color:#aa5500;">red</span>;
0301   }
0302 }
0303 button {
0304   <span style="color:#644a9b;">.my-hover-mixin</span>();
0305 }
0306 
0307 <span style="color:#898887;">// Namespaces</span>
0308 
0309 <span style="color:#006e28;font-weight:bold;">#outer</span> {
0310   <span style="color:#644a9b;">.inner</span> {
0311     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">red</span>;
0312   }
0313 }
0314 
0315 <span style="color:#644a9b;">.c</span> {
0316   <span style="color:#006e28;font-weight:bold;">#outer</span> &gt; <span style="color:#644a9b;">.inner</span>;
0317 }
0318 
0319 <span style="color:#644a9b;">.d</span> {
0320   <span style="color:#006e28;font-weight:bold;">#outer</span> &gt; <span style="color:#644a9b;">.inner</span>;
0321   <span style="color:#006e28;font-weight:bold;">#outer</span> &gt; <span style="color:#644a9b;">.inner</span>();
0322   <span style="color:#006e28;font-weight:bold;">#outer</span> <span style="color:#644a9b;">.inner</span>;
0323   <span style="color:#006e28;font-weight:bold;">#outer</span> <span style="color:#644a9b;">.inner</span>();
0324   <span style="color:#006e28;font-weight:bold;">#outer</span><span style="color:#644a9b;">.inner</span>;
0325   <span style="color:#006e28;font-weight:bold;">#outer</span><span style="color:#644a9b;">.inner</span>();
0326 }
0327 
0328 <span style="color:#898887;">// Guarded Namespaces</span>
0329 
0330 <span style="color:#006e28;font-weight:bold;">#namespace</span> <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@mode</span>=huge) {
0331   <span style="color:#644a9b;">.mixin</span>() { <span style="color:#898887;">/* */</span> }
0332 }
0333 
0334 <span style="color:#006e28;font-weight:bold;">#namespace</span> {
0335   <span style="color:#644a9b;">.mixin</span>() <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@mode</span>=huge) { <span style="color:#898887;">/* */</span> }
0336 }
0337 
0338 <span style="color:#006e28;font-weight:bold;">#sp_1</span> <span style="font-weight:bold;">when </span>(<span style="color:#644a9b;font-weight:bold;">default</span>()) {
0339   <span style="color:#006e28;font-weight:bold;">#sp_2</span> <span style="font-weight:bold;">when </span>(<span style="color:#644a9b;font-weight:bold;">default</span>()) {
0340     <span style="color:#644a9b;">.mixin</span>() <span style="font-weight:bold;">when not</span>(<span style="color:#644a9b;font-weight:bold;">default</span>()) { <span style="color:#898887;">/* */</span> }
0341   }
0342 }
0343 
0344 <span style="color:#898887;">// The !important keyword</span>
0345 
0346 <span style="color:#644a9b;">.foo</span> (<span style="color:#0057ae;">@bg</span>: <span style="color:#aa5500;">#f5f5f5</span>, <span style="color:#0057ae;">@color</span>: <span style="color:#aa5500;">#900</span>) {
0347   <span style="font-weight:bold;">background</span>: <span style="color:#0057ae;">@bg</span>;
0348   <span style="font-weight:bold;">color</span>: <span style="color:#0057ae;">@color</span> <span style="color:#0057ae;">!important</span>;
0349 }
0350 <span style="color:#644a9b;">.unimportant</span> {
0351   <span style="color:#644a9b;">.foo</span>();
0352 }
0353 <span style="color:#644a9b;">.important</span> {
0354   <span style="color:#644a9b;">.foo</span>() <span style="color:#0057ae;">!important</span>;
0355 }
0356 
0357 <span style="color:#898887;">// Parametric Mixins</span>
0358 
0359 <span style="color:#644a9b;">.border-radius</span>(<span style="color:#0057ae;">@radius</span>) {
0360   <span style="font-weight:bold;">-webkit-border-radius</span>: <span style="color:#0057ae;">@radius</span>;
0361      <span style="font-weight:bold;">-moz-border-radius</span>: <span style="color:#0057ae;">@radius</span>;
0362           <span style="font-weight:bold;">border-radius</span>: <span style="color:#0057ae;">@radius</span>;
0363 }
0364 
0365 <span style="color:#006e28;font-weight:bold;">#header</span> {
0366   <span style="color:#644a9b;">.border-radius</span>(<span style="color:#b08000;">4</span><span style="color:#0057ae;">px</span>);
0367 }
0368 <span style="color:#644a9b;">.button</span> {
0369   <span style="color:#644a9b;">.border-radius</span>(<span style="color:#b08000;">6</span><span style="color:#0057ae;">px</span>);
0370 }
0371 
0372 <span style="color:#644a9b;">.border-radius</span>(<span style="color:#0057ae;">@radius</span>: <span style="color:#b08000;">5</span><span style="color:#0057ae;">px</span>) {
0373   <span style="font-weight:bold;">-webkit-border-radius</span>: <span style="color:#0057ae;">@radius</span>;
0374      <span style="font-weight:bold;">-moz-border-radius</span>: <span style="color:#0057ae;">@radius</span>;
0375           <span style="font-weight:bold;">border-radius</span>: <span style="color:#0057ae;">@radius</span>;
0376 }
0377 
0378 <span style="color:#644a9b;">.wrap</span>() {
0379   <span style="font-weight:bold;">text-wrap</span>: wrap;
0380   <span style="font-weight:bold;">white-space</span>: -moz-pre-wrap;
0381   <span style="font-weight:bold;">white-space</span>: <span style="color:#b08000;">pre-wrap</span>;
0382   <span style="font-weight:bold;">word-wrap</span>: <span style="color:#b08000;">break-word</span>;
0383 }
0384 
0385 pre { <span style="color:#644a9b;">.wrap</span> }
0386 
0387 <span style="color:#898887;">// Mixins with Multiple Parameters</span>
0388 
0389 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@color</span>) {
0390   color-1<span style="color:#b08000;">:</span> <span style="color:#ff5500;">@color</span>;
0391 }
0392 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@color</span>; <span style="color:#0057ae;">@padding</span>: <span style="color:#b08000;">2</span>) {
0393   color-2<span style="color:#b08000;">:</span> <span style="color:#ff5500;">@color</span>;
0394   padding-2<span style="color:#b08000;">:</span> <span style="color:#ff5500;">@padding</span>;
0395 }
0396 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@color</span>; <span style="color:#0057ae;">@padding</span>; <span style="color:#0057ae;">@margin</span>: <span style="color:#b08000;">2</span>) {
0397   color-3<span style="color:#b08000;">:</span> <span style="color:#ff5500;">@color</span>;
0398   padding-3<span style="color:#b08000;">:</span> <span style="color:#ff5500;">@padding</span>;
0399   <span style="font-weight:bold;">margin</span>: <span style="color:#0057ae;">@margin</span> <span style="color:#0057ae;">@margin</span> <span style="color:#0057ae;">@margin</span> <span style="color:#0057ae;">@margin</span>;
0400 }
0401 <span style="color:#644a9b;">.some</span> <span style="color:#644a9b;">.selector</span> div {
0402   <span style="color:#644a9b;">.mixin</span>(<span style="color:#aa5500;">#008000</span>);
0403 }
0404 
0405 <span style="color:#898887;">// Named parameters</span>
0406 
0407 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@color</span>: <span style="color:#aa5500;">black</span>; <span style="color:#0057ae;">@margin</span>: <span style="color:#b08000;">10</span><span style="color:#0057ae;">px</span>; <span style="color:#0057ae;">@padding</span>: <span style="color:#b08000;">20</span><span style="color:#0057ae;">px</span>) {
0408   <span style="font-weight:bold;">color</span>: <span style="color:#0057ae;">@color</span>;
0409   <span style="font-weight:bold;">margin</span>: <span style="color:#0057ae;">@margin</span>;
0410   <span style="font-weight:bold;">padding</span>: <span style="color:#0057ae;">@padding</span>;
0411 }
0412 <span style="color:#644a9b;">.class1</span> {
0413   <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@margin</span>: <span style="color:#b08000;">20</span><span style="color:#0057ae;">px</span>; <span style="color:#0057ae;">@color</span>: <span style="color:#aa5500;">#33acfe</span>);
0414 }
0415 <span style="color:#644a9b;">.class2</span> {
0416   <span style="color:#644a9b;">.mixin</span>(<span style="color:#aa5500;">#efca44</span>; <span style="color:#0057ae;">@padding</span>: <span style="color:#b08000;">40</span><span style="color:#0057ae;">px</span>);
0417 }
0418 
0419 <span style="color:#898887;">// The @arguments Variable</span>
0420 
0421 <span style="color:#644a9b;">.box-shadow</span>(<span style="color:#0057ae;">@x</span>: <span style="color:#b08000;">0</span>; <span style="color:#0057ae;">@y</span>: <span style="color:#b08000;">0</span>; <span style="color:#0057ae;">@blur</span>: <span style="color:#b08000;">1</span><span style="color:#0057ae;">px</span>; <span style="color:#0057ae;">@color</span>: <span style="color:#aa5500;">#000</span>) {
0422   <span style="font-weight:bold;">-webkit-box-shadow</span>: <span style="color:#0057ae;">@arguments</span>;
0423      <span style="font-weight:bold;">-moz-box-shadow</span>: <span style="color:#0057ae;">@arguments</span>;
0424           <span style="font-weight:bold;">box-shadow</span>: <span style="color:#0057ae;">@arguments</span>;
0425 }
0426 <span style="color:#644a9b;">.big-block</span> {
0427   <span style="color:#644a9b;">.box-shadow</span>(<span style="color:#b08000;">2</span><span style="color:#0057ae;">px</span>; <span style="color:#b08000;">5</span><span style="color:#0057ae;">px</span>);
0428 }
0429 
0430 <span style="color:#898887;">// Advanced Arguments and the @rest Variable</span>
0431 
0432 <span style="color:#644a9b;">.mixin</span>(<span style="color:#b08000;">...</span>) {}        <span style="color:#898887;">// matches 0-N arguments</span>
0433 <span style="color:#644a9b;">.mixin</span>() {}           <span style="color:#898887;">// matches exactly 0 arguments</span>
0434 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@a</span>: <span style="color:#b08000;">1</span>) {}      <span style="color:#898887;">// matches 0-1 arguments</span>
0435 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@a</span>: <span style="color:#b08000;">1</span>; <span style="color:#b08000;">...</span>) {} <span style="color:#898887;">// matches 0-N arguments</span>
0436 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@a</span>; <span style="color:#b08000;">...</span>) {}    <span style="color:#898887;">// matches 1-N arguments</span>
0437 
0438 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@a</span>; <span style="color:#0057ae;">@rest</span><span style="color:#b08000;">...</span>) {
0439    <span style="color:#898887;">// @rest is bound to arguments after @a</span>
0440    <span style="color:#898887;">// @arguments is bound to all arguments</span>
0441 }
0442 
0443 <span style="color:#898887;">// Pattern-matching</span>
0444 
0445 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@s</span>; <span style="color:#0057ae;">@color</span>) { <span style="color:#644a9b;">...</span> }
0446 
0447 <span style="color:#644a9b;">.class</span> {
0448   <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@switch</span>; <span style="color:#aa5500;">#888</span>);
0449 }
0450 
0451 <span style="color:#644a9b;">.mixin</span>(dark; <span style="color:#0057ae;">@color</span>) {
0452   <span style="font-weight:bold;">color</span>: <span style="color:#644a9b;font-weight:bold;">darken</span>(<span style="color:#0057ae;">@color</span>, <span style="color:#b08000;">10</span><span style="color:#0057ae;">%</span>);
0453 }
0454 <span style="color:#644a9b;">.mixin</span>(<span style="color:#b08000;">light</span>; <span style="color:#0057ae;">@color</span>) {
0455   <span style="font-weight:bold;">color</span>: <span style="color:#644a9b;font-weight:bold;">lighten</span>(<span style="color:#0057ae;">@color</span>, <span style="color:#b08000;">10</span><span style="color:#0057ae;">%</span>);
0456 }
0457 <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@_</span>; <span style="color:#0057ae;">@color</span>) {
0458   <span style="font-weight:bold;">display</span>: <span style="color:#b08000;">block</span>;
0459 }
0460 
0461 <span style="color:#0057ae;">@switch:</span> <span style="color:#b08000;">light</span>;
0462 
0463 <span style="color:#644a9b;">.class</span> {
0464   <span style="color:#644a9b;">.mixin</span>(<span style="color:#0057ae;">@switch</span>; <span style="color:#aa5500;">#888</span>);
0465 }
0466 
0467 <span style="color:#898887;">// Mixins as Functions</span>
0468 
0469 <span style="color:#644a9b;">.average</span>(<span style="color:#0057ae;">@x</span>, <span style="color:#0057ae;">@y</span>) {
0470   <span style="color:#0057ae;">@average:</span> ((<span style="color:#0057ae;">@x</span> + <span style="color:#0057ae;">@y</span>) / <span style="color:#b08000;">2</span>);
0471 }
0472 
0473 div {
0474   <span style="color:#644a9b;">.average</span>(<span style="color:#b08000;">16</span><span style="color:#0057ae;">px</span>, <span style="color:#b08000;">50</span><span style="color:#0057ae;">px</span>); <span style="color:#898887;">// &quot;call&quot; the mixin</span>
0475   <span style="font-weight:bold;">padding</span>: <span style="color:#0057ae;">@average</span>;    <span style="color:#898887;">// use its &quot;return&quot; value</span>
0476 }
0477 
0478 <span style="color:#898887;">// Passing Rulesets to Mixins</span>
0479 
0480 <span style="color:#898887;">// declare detached ruleset</span>
0481 <span style="color:#0057ae;">@detached-ruleset:</span> { <span style="font-weight:bold;">background</span>: <span style="color:#aa5500;">red</span>; };
0482 
0483 <span style="color:#898887;">// use detached ruleset</span>
0484 <span style="color:#644a9b;">.top</span> {
0485     <span style="color:#ff5500;">@detached-ruleset</span>();
0486 }
0487 
0488 <span style="color:#644a9b;">.desktop-and-old-ie</span>(<span style="color:#0057ae;">@rules</span>) {
0489   <span style="color:#ff5500;">@media</span> <span style="color:#b08000;">screen</span> <span style="font-weight:bold;">and</span> (<span style="font-weight:bold;">min-width</span>: <span style="color:#b08000;">1200</span><span style="color:#0057ae;">px</span>) { <span style="color:#ff5500;">@rules</span>(); }
0490   html<span style="color:#644a9b;">.lt-ie9</span> &amp;                         { <span style="color:#ff5500;">@rules</span>(); }
0491 }
0492 
0493 header {
0494   <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">blue</span>;
0495 
0496   <span style="color:#644a9b;">.desktop-and-old-ie</span>({
0497     background-color: <span style="color:#aa5500;">red</span>;
0498   });
0499 }
0500 
0501 <span style="color:#0057ae;">@my-ruleset:</span> {
0502   <span style="color:#644a9b;">.my-selector</span> {
0503     <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">black</span>;
0504   }
0505 };
0506 
0507 <span style="color:#0057ae;">@my-ruleset:</span> {
0508     <span style="color:#644a9b;">.my-selector</span> {
0509       <span style="color:#ff5500;">@media</span> <span style="color:#b08000;">tv</span> {
0510         <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">black</span>;
0511       }
0512     }
0513   };
0514 <span style="color:#ff5500;">@media</span> (<span style="font-weight:bold;">orientation</span>:<span style="color:#b08000;">portrait</span>) {
0515     <span style="color:#ff5500;">@my-ruleset</span>();
0516 }
0517 
0518 <span style="color:#898887;">// Scoping</span>
0519 
0520 <span style="color:#0057ae;">@detached-ruleset:</span> {
0521   <span style="font-style:italic;">caller-variable</span>: <span style="color:#0057ae;">@caller-variable</span>; <span style="color:#898887;">// variable is undefined here</span>
0522   <span style="color:#644a9b;">.caller-mixin</span>(); <span style="color:#898887;">// mixin is undefined here</span>
0523 };
0524 
0525 selector {
0526   <span style="color:#898887;">// use detached ruleset</span>
0527   <span style="color:#ff5500;">@detached-ruleset</span>();
0528 
0529   <span style="color:#898887;">// define variable and mixin needed inside the detached ruleset</span>
0530   <span style="color:#0057ae;">@caller-variable:</span> value;
0531   <span style="color:#644a9b;">.caller-mixin</span>() {
0532     <span style="font-style:italic;">variable</span>: declaration;
0533   }
0534 }
0535 
0536 <span style="color:#898887;">/*</span>
0537 <span style="color:#898887;"> * reference: use a Less file but do not output it</span>
0538 <span style="color:#898887;">inline: include the source file in the output but do not process it</span>
0539 <span style="color:#898887;">less: treat the file as a Less file, no matter what the file extension</span>
0540 <span style="color:#898887;">css: treat the file as a CSS file, no matter what the file extension</span>
0541 <span style="color:#898887;">once: only include the file once (this is default behavior)</span>
0542 <span style="color:#898887;">multiple: include the file multiple times</span>
0543 <span style="color:#898887;">optional: continue compiling when file is not found</span>
0544 <span style="color:#898887;"> */</span>
0545 
0546 <span style="color:#ff5500;">@import</span> (optional, reference) <span style="color:#bf0303;">&quot;foo.less&quot;</span>;
0547 
0548 <span style="color:#898887;">// Mixin Guards</span>
0549 
0550 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#644a9b;font-weight:bold;">lightness</span>(<span style="color:#0057ae;">@a</span>) &gt;= <span style="color:#b08000;">50</span><span style="color:#0057ae;">%</span>) {
0551   <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">black</span>;
0552 }
0553 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#644a9b;font-weight:bold;">lightness</span>(<span style="color:#0057ae;">@a</span>) &lt; <span style="color:#b08000;">50</span><span style="color:#0057ae;">%</span>) {
0554   <span style="font-weight:bold;">background-color</span>: <span style="color:#aa5500;">white</span>;
0555 }
0556 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>) {
0557   <span style="font-weight:bold;">color</span>: <span style="color:#0057ae;">@a</span>;
0558 }
0559 
0560 <span style="color:#898887;">// Guard Comparison Operators</span>
0561 
0562 <span style="color:#644a9b;">.truth</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@a</span>) { }
0563 <span style="color:#644a9b;">.truth</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@a</span> = true) { }
0564 
0565 <span style="color:#898887;">// </span><span style="color:#ca9219;background-color:#451e1a;font-weight:bold;">FIXME</span><span style="color:#898887;">: @media as variable</span>
0566 <span style="color:#0057ae;">@media:</span> mobile;
0567 
0568 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@media</span> = mobile) { }
0569 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@media</span> = desktop) { }
0570 
0571 <span style="color:#644a9b;">.max</span> (<span style="color:#0057ae;">@a</span>; <span style="color:#0057ae;">@b</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@a</span> &gt; <span style="color:#0057ae;">@b</span>) { <span style="font-weight:bold;">width</span>: <span style="color:#0057ae;">@a</span> }
0572 <span style="color:#644a9b;">.max</span> (<span style="color:#0057ae;">@a</span>; <span style="color:#0057ae;">@b</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@a</span> &lt; <span style="color:#0057ae;">@b</span>) { <span style="font-weight:bold;">width</span>: <span style="color:#0057ae;">@b</span> }
0573 
0574 <span style="color:#898887;">// Guard Logical Operators</span>
0575 
0576 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#644a9b;font-weight:bold;">isnumber</span>(<span style="color:#0057ae;">@a</span>)) and (<span style="color:#0057ae;">@a</span> &gt; <span style="color:#b08000;">0</span>) {  }
0577 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@a</span> &gt; <span style="color:#b08000;">10</span>), (<span style="color:#0057ae;">@a</span> &lt; <span style="color:#b08000;">-10</span>) {  }
0578 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@b</span>) <span style="font-weight:bold;">when not</span> (<span style="color:#0057ae;">@b</span> &gt; <span style="color:#b08000;">0</span>) { }
0579 
0580 <span style="color:#898887;">// Type Checking Functions</span>
0581 
0582 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>; <span style="color:#0057ae;">@b</span>: <span style="color:#b08000;">0</span>) <span style="font-weight:bold;">when </span>(<span style="color:#644a9b;font-weight:bold;">isnumber</span>(<span style="color:#0057ae;">@b</span>)) { }
0583 <span style="color:#644a9b;">.mixin</span> (<span style="color:#0057ae;">@a</span>; <span style="color:#0057ae;">@b</span>: <span style="color:#aa5500;">black</span>) <span style="font-weight:bold;">when </span>(<span style="color:#644a9b;font-weight:bold;">iscolor</span>(<span style="color:#0057ae;">@b</span>)) {}
0584 
0585 button <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@my-option</span> = true) {
0586   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">white</span>;
0587 
0588   &amp; <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@my-option</span> = true) {
0589   button {
0590     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">white</span>;
0591   }
0592   a {
0593     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0594   }
0595 }
0596 }
0597 
0598 <span style="color:#898887;">// Loops</span>
0599 
0600 <span style="color:#644a9b;">.loop</span>(<span style="color:#0057ae;">@counter</span>) <span style="font-weight:bold;">when </span>(<span style="color:#0057ae;">@counter</span> &gt; <span style="color:#b08000;">0</span>) {
0601   <span style="color:#644a9b;">.loop</span>((<span style="color:#0057ae;">@counter</span> - <span style="color:#b08000;">1</span>));    <span style="color:#898887;">// next iteration</span>
0602   <span style="font-weight:bold;">width</span>: (<span style="color:#b08000;">10</span><span style="color:#0057ae;">px</span> * <span style="color:#0057ae;">@counter</span>); <span style="color:#898887;">// code for each iteration</span>
0603 }
0604 
0605 div {
0606   <span style="color:#644a9b;">.loop</span>(<span style="color:#b08000;">5</span>); <span style="color:#898887;">// launch the loop</span>
0607 }
0608 
0609 <span style="color:#898887;">// Merge</span>
0610 
0611 <span style="color:#644a9b;">.mixin</span>() {
0612   <span style="font-weight:bold;">box-shadow</span>+: <span style="color:#b08000;">inset</span> <span style="color:#b08000;">0</span> <span style="color:#b08000;">0</span> <span style="color:#b08000;">10</span><span style="color:#0057ae;">px</span> <span style="color:#aa5500;">#555</span>;
0613 }
0614 <span style="color:#644a9b;">.myclass</span> {
0615   <span style="color:#644a9b;">.mixin</span>();
0616   <span style="font-weight:bold;">box-shadow</span>+: <span style="color:#b08000;">0</span> <span style="color:#b08000;">0</span> <span style="color:#b08000;">20</span><span style="color:#0057ae;">px</span> <span style="color:#aa5500;">black</span>;
0617 }
0618 
0619 <span style="color:#898887;">// Space</span>
0620 
0621 <span style="color:#644a9b;">.mixin</span>() {
0622   <span style="font-weight:bold;">transform</span>+_: <span style="color:#644a9b;font-weight:bold;">scale</span>(<span style="color:#b08000;">2</span>);
0623 }
0624 <span style="color:#644a9b;">.myclass</span> {
0625   <span style="color:#644a9b;">.mixin</span>();
0626   <span style="font-weight:bold;">transform</span>+_: <span style="color:#644a9b;font-weight:bold;">rotate</span>(<span style="color:#b08000;">15</span><span style="color:#0057ae;">deg</span>);
0627 }
0628 
0629 <span style="color:#898887;">// Parent Selectors</span>
0630 
0631 a {
0632   <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0633   &amp;<span style="color:#b08000;">:hover</span> {
0634     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">green</span>;
0635   }
0636 }
0637 
0638 <span style="color:#644a9b;">.button</span> {
0639   &amp;-ok {
0640     <span style="font-weight:bold;">background-image</span>: <span style="color:#644a9b;font-weight:bold;">url</span>(<span style="color:#bf0303;">&quot;ok.png&quot;</span>);
0641   }
0642   &amp;-cancel {
0643     <span style="font-weight:bold;">background-image</span>: <span style="color:#644a9b;font-weight:bold;">url</span>(<span style="color:#bf0303;">&quot;cancel.png&quot;</span>);
0644   }
0645 
0646   &amp;-custom {
0647     <span style="font-weight:bold;">background-image</span>: <span style="color:#644a9b;font-weight:bold;">url</span>(<span style="color:#bf0303;">&quot;custom.png&quot;</span>);
0648   }
0649 }
0650 
0651 <span style="color:#644a9b;">.link</span> {
0652   &amp; + &amp; {
0653     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">red</span>;
0654   }
0655 
0656   &amp; &amp; {
0657     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">green</span>;
0658   }
0659 
0660   &amp;&amp; {
0661     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0662   }
0663 
0664   &amp;, &amp;ish {
0665     <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">cyan</span>;
0666   }
0667 }
0668 
0669 <span style="color:#644a9b;">.grand</span> {
0670   <span style="color:#644a9b;">.parent</span> {
0671     &amp; &gt; &amp; {
0672       <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">red</span>;
0673     }
0674 
0675     &amp; &amp; {
0676       <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">green</span>;
0677     }
0678 
0679     &amp;&amp; {
0680       <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">blue</span>;
0681     }
0682 
0683     &amp;, &amp;ish {
0684       <span style="font-weight:bold;">color</span>: <span style="color:#aa5500;">cyan</span>;
0685     }
0686   }
0687 }
0688 
0689 <span style="color:#898887;">// Changing Selector Order</span>
0690 
0691 <span style="color:#644a9b;">.header</span> {
0692   <span style="color:#644a9b;">.menu</span> {
0693     <span style="font-weight:bold;">border-radius</span>: <span style="color:#b08000;">5</span><span style="color:#0057ae;">px</span>;
0694     <span style="color:#644a9b;">.no-borderradius</span> &amp; {
0695       <span style="font-weight:bold;">background-image</span>: <span style="color:#644a9b;font-weight:bold;">url</span>(<span style="color:#bf0303;">'images/button-background.png'</span>);
0696     }
0697   }
0698 }
0699 
0700 <span style="color:#898887;">// Combinatorial Explosion</span>
0701 
0702 p, a, ul, li {
0703   <span style="font-weight:bold;">border-top</span>: <span style="color:#b08000;">2</span><span style="color:#0057ae;">px</span> <span style="color:#b08000;">dotted</span> <span style="color:#aa5500;">#366</span>;
0704   &amp; + &amp; {
0705     <span style="font-weight:bold;">border-top</span>: <span style="color:#b08000;">0</span>;
0706   }
0707 }
0708 </pre></body></html>