Linux SRV-16 6.18.44-paas #1 SMP PREEMPT_DYNAMIC Thu Aug 13 10:08:12 UTC 2026 x86_64
/
srv
/
data
/
web
/
vhosts
/
www.shinegis.mu
/
htdocs
/
functions
/
scssphp
/
tests
/
inputs
/
/srv/data/web/vhosts/www.shinegis.mu/htdocs/functions/scssphp/tests/inputs/operators.scss
body { color: 1 + 2 + 5; color: 1 + 2 * 5 + 5; height: 10px/10px; color: 10px/2 + 1; color: (10px/2); //bottom: (4/2px); top: 1em * (1 * 24px - 0) / 16px; left: 1 - 2cm; top: (2cm/12px); } div { color: 4 == 3; color: hello == hello; color: 4 > 3; color: 4 < 3; } #units { test: 1in + 4cm; test: 12mm + 1; test: 1 + 3em; test: 1mm + 1cm; test: 1cm + 1mm; } #modulo { test: 3 % 2; test: 4cm % 3; } #colors { color: #fff == 255; color: #fff != 255; color: 255 == #fff; color: 255 != #fff; color: #fff == #000; color: #fff == #fff; color: #fff != #000; color: #fff != #fff; } #preserve { hello: what -going; hello: what - going; } #strings { hello: what -going; hello: what +going; hello: what+going; hello: what+ going; hello: what + going; hello: "what" + going; hello: going + "what"; hello: "what" + "what"; } #negation { $num: 100; a: -$num + 40; b: 10 -$num; b: 10 - $num; } #bools-fail { and: false and two; and: one and two; and: one and false; or: false or two; or: one or two; or: one or false; } #bools { and: (false and two); and: (one and two); and: (one and false); and: (null and two); or: (false or two); or: (one or two); or: (one or false); or: (null or two); mixed_precedence: true or 128 < 0 and false; } #nots-fail { not: not true + 2; not: not false; not: not 0; not: not 1; not: not ""; not: not hello; } #nots { not: (not true) + 2; not: (not false); not: (not 0); not: (not 1); not: (not ""); not: (not hello); not: (not null); } #string-test { str: hi == "hi"; str: hi == "no"; str: 'yes' == 'yes'; $var1: "hello"; $var2: hello; str: "#{$var1}" == '#{$var2}'; str: xhello#{$var1}x == "x#{$var2}hellox"; // xhellohellofalse str: unit(10px) == px; } #special { cancel-unit: (10px / 10px); } // not expecting unary $form-spacing: 1em; .row .a { margin: 0-$form-spacing / 2; } .row .b { margin: 0- $form-spacing / 2; } .row .c { margin: 0 - $form-spacing / 2; } .row .d { margin: 0 -$form-spacing / 2; } .row .e { margin: 0 (-$form-spacing / 2); } .alt .a { margin: 0-1em / 2; } .alt .b { margin: 0- 1em / 2; } .alt .c { margin: 0 - 1em / 2; } .alt .d { margin: 0 -1em / 2; } .alt .e { margin: 0 (-1em / 2); } .row .f { margin: 0-$form-spacing * 2; } .row .g { margin: 0- $form-spacing * 2; } .row .h { margin: 0 - $form-spacing * 2; } .row .i { margin: 0 -$form-spacing * 2; } .row .j { margin: 0 (-$form-spacing * 2); } .alt .f { margin: 0-1em * 2; } .alt .g { margin: 0- 1em * 2; } .alt .h { margin: 0 - 1em * 2; } .alt .i { margin: 0 -1em * 2; } .alt .j { margin: 0 (-1em * 2); } $gridColumns: 12 !default; $gridColumnWidth: 60px !default; $gridGutterWidth: 20px !default; $gridRowWidth: ($gridColumns * $gridColumnWidth) + ($gridGutterWidth * ($gridColumns - 1)) !default; $fluidGridGutterWidth: percentage($gridGutterWidth/$gridRowWidth) !default; div { *margin-left: $fluidGridGutterWidth - (.5 / $gridRowWidth * 100px * 1%); } $gridRowWidth: 20px; .foo { width: (2.5 / $gridRowWidth * 100px * 1% ); } $and: true and false; $or: false or true; $and1: null and true; // (null) $and2: true and null; // (null) $and3: null and false; // (null) $and4: false and null; // false $and5: one and null; // (null) $and6: null and one; // (null) $or1: null or true; // true $or2: true or null; // true $or3: null or false; // false $or4: false or null; // (null) $or5: one or null; // one $or6: null or one; // one #bools-test { a: $and; b: $or; c: $and1; d: $and2; e: $and3; f: $and4; g: $and5; h: $and6; n: $or1; o: $or2; p: $or3; q: $or4; r: $or5; s: $or6; } a { width: 14px / 1440px * 100vw; height: (14px * 100vw) / 1440px; }