平等

兼容性(无单位平等):
Dart·Sass(Dart Sass)
LibSass
rubySass
4.0.0起  (未发布)

LibSass和旧版本的Ruby Sass认为没有单位的数字等于有任何单位的相同数字。不建议使用此行为,因为它违反了传递性,因此已从最新版本中将其删除。

相等运算符返回两个值是否相同。它们被编写为<expression> == <expression>,它返回两个表达式是否相等,以及<expression> != <expression>,它返回两个表达式是否相等。如果两个值具有相同的类型相同的值,则它们被视为相等,这意味着不同类型的事物具有不同的含义:

  • 如果数字具有相同的值相同的单位,或者当它们的单位彼此转换时它们的值相等,则数字相等。
  • 字符串是不寻常的,因为相同内容的引号的字符串被认为是相等的。
  • 如果颜色具有相同的红色,绿色,蓝色和Alpha值,则颜色相等。
  • 如果列表内容相等,则列表相等。以逗号分隔的列表不等于以空格分隔的列表,并且带括号的列表不等于不带括号的列表。
  • 如果映射的键和值都相等,则它们相等。
  • truefalsenull仅等于自己。
  • 功能等于相同的功能。函数是通过引用进行比较,因此,即使两个函数具有相同的名称和定义,即使它们不在同一位置,也被认为是不同的。

SCSS  语法

@debug 1px == 1px; // true
@debug 1px != 1em; // true
@debug 1 != 1px; // true
@debug 96px == 1in; // true

@debug "Helvetica" == Helvetica; // true
@debug "Helvetica" != "Arial"; // true

@debug hsl(34, 35%, 92.1%) == #f2ece4; // true
@debug rgba(179, 115, 153, 0.5) != rgba(179, 115, 153, 0.8); // true

@debug (5px 7px 10px) == (5px 7px 10px); // true
@debug (5px 7px 10px) != (10px 14px 20px); // true
@debug (5px 7px 10px) != (5px, 7px, 10px); // true
@debug (5px 7px 10px) != [5px 7px 10px]; // true

$theme: ("venus": #998099, "nebula": #d2e1dd);
@debug $theme == ("venus": #998099, "nebula": #d2e1dd); // true
@debug $theme != ("venus": #998099, "iron": #dadbdf); // true

@debug true == true; // true
@debug true != false; // true
@debug null != false; // true

@debug get-function("rgba") == get-function("rgba"); // true
@debug get-function("rgba") != get-function("hsla"); // true

Sass语法

@debug 1px == 1px  // true
@debug 1px != 1em  // true
@debug 1 != 1px  // true
@debug 96px == 1in  // true

@debug "Helvetica" == Helvetica  // true
@debug "Helvetica" != "Arial"  // true

@debug hsl(34, 35%, 92.1%) == #f2ece4  // true
@debug rgba(179, 115, 153, 0.5) != rgba(179, 115, 153, 0.8)  // true

@debug (5px 7px 10px) == (5px 7px 10px)  // true
@debug (5px 7px 10px) != (10px 14px 20px)  // true
@debug (5px 7px 10px) != (5px, 7px, 10px)  // true
@debug (5px 7px 10px) != [5px 7px 10px]  // true

$theme: ("venus": #998099, "nebula": #d2e1dd) 
@debug $theme == ("venus": #998099, "nebula": #d2e1dd)  // true
@debug $theme != ("venus": #998099, "iron": #dadbdf)  // true

@debug true == true  // true
@debug true != false  // true
@debug null != false  // true

@debug get-function("rgba") == get-function("rgba")  // true
@debug get-function("rgba") != get-function("hsla")  // true