Sass的运算

Stella981
• 阅读 737

本节我们学习 Sass 中的运算,一般的编程语法中都支持使用运算,Sass 中同样可以做各种数学运算,包括最基本的加减乘除运算、变量运算、颜色运算、字符运算等。本节我们主要讲一下 Sass 中最基本的数学运算。

加法运算

加法运算 + 是 Sass 中基本运算之一,在变量或者属性中都可以做加法运算。

示例:
$num:14px;
.xkd{
    width:50px + 50px;
    font-size: $num + 4px;
}

编译成 CSS 代码:

.xkd {
  width: 100px;
  font-size: 18px;
}

在进行运算时,还要注意所带的单位,当单位不同时会导致报错,例如:

.xkd{
    font-size: 12px + 2em;
}

执行代码,报错信息如下所示:

Error: Incompatible units: 'em' and 'px'.
        on line 2 of style.scss
  Use --trace for backtrace.

减法运算

Sass 中的减法运算和加法运算使用起来很类似,当使用不同类型的单位时也会报错。

示例:
$width:100px;
.xkd{
    width: 500px - $width;
    height: 300 - $width;
}

编译成 CSS 代码:

.xkd {
  width: 400px;
  height: 200px;
}

乘法运算

Sass 中的乘法运算和加减法运算一样,不同单位的值进行计算会导致报错。但是它们之间还是有一些不同,当我们使用相同单位的值进行乘法运算时,会出现问题。

示例:
.xkd{
    width:100px * 2px;
}

执行的代码后报错信息如下所示:

Error: 200px*px isn't a valid CSS value.
        on line 2 of style.scss
  Use --trace for backtrace.

所以如果我们要进行乘法运算,两个值需要为其中一个指定单位即可:

.xkd{
    width:100px * 2;
}

编译成 CSS 代码:

.xkd {
  width: 200px;
}

除法运算

Sass 中的除法运算也和乘法运算差不多,不过除法运算还有一个不一样的地方。在 CSS 中 / 符号已经作为一种符号使用,所以当我们在做除法运算时,如果直接使用 / 符号,编译后还是会原样输出,这样并不是我们想要的效果。

示例:
.xkd{
    width:100px / 2;
}

编译成 CSS 代码:

.xkd {
  width: 100px / 2;
}

可以看到编译后的 CSS 代码中, / 符号并没有进行计算。所以如果我们想要进行除法运算,要怎么办呢?

其实很简单,只需要将运算表达式使用一对小括号 () 括起来即可,例如:

.xkd{
    width:(100px / 2);
}

编译成 CSS 代码:

.xkd {
  width: 50px;
}

除此之外,当我们在一个已经存在运算符的表达式中使用 / 符号时,不用小括号括起来,也能进行除法运算。

示例:
.xkd{
    width:100px + 300px / 2;
}

编译成 CSS 代码:

.xkd {
  width: 250px;
}

从编译后的 CSS 代码中可以看出,当一个表达式中有多种运算符时,和数学中一样,先算乘除再算加减,有括号则先算括号里的。

点赞
收藏
评论区
推荐文章
Irene181 Irene181
3年前
一篇文章带你了解Python运算符重载
您可以根据所使用的操作数来更改Python中运算符的含义。这种做法称为运算符重载,今天我们一起来聊聊运算符重载。一、什么是Python中的运算符重载?Python运算符用于内置类。但是相同的运算符对不同的类型有不同的行为。例如,运算符将对两个数字执行算术加法、合并两个列表并连接两个字符串。Python中的这一功能允许同一运算符根据上下文具有不同的含
Irene181 Irene181
3年前
一篇文章带你了解Python运算符重载
您可以根据所使用的操作数来更改Python中运算符的含义。这种做法称为运算符重载,今天我们一起来聊聊运算符重载。一、什么是Python中的运算符重载?Python运算符用于内置类。但是相同的运算符对不同的类型有不同的行为。例如,运算符将对两个数字执行算术加法、合并两个列表并连接两个字符串。Python中的这一功能允许同一运算符根据上下文具有不同的含
CuterCorley CuterCorley
3年前
Python Django开发 经验技巧总结(二)
1.模板中变量的运算(1)加法markup{{value|add:value2}}返回的结果是valuevalue2的值,假设你value为40,value2为60,则该表达式返回结果为100(2)减法markup{{value|addvalue2}}与加法的性质一样,只不过是把第二个参数变成负数进行运算,返回的结果是va
Wesley13 Wesley13
3年前
SASS基础
特点:1.在css基础上增加特性:变量、嵌套(nesting)、混合(@mixin)、继承(@extend);2.通过函数进行颜色值与属性值的运算;3.提供控制指令等高级功能;4.自定义输出指令;数据类型:Sass和JavaScript语言类似,也具有自己的数据类型,在Sass中包含以下几种数据类型:1\
Wesley13 Wesley13
3年前
thinkphp3.2.3模板渲染支持三元表达式
thinkphp3.2.3模板渲染支持三元表达式{$status?'正常':'错误'}{$info'status'?$info'msg':$info'error'}注意:三元运算符中暂时不支持点语法。如下:           <divclass"modalhidefade"id'myModa
Stella981 Stella981
3年前
CSS预处理器SASS用法和koala工具的使用
   最近在学习前端的时候,发现了一个SASS(CSS预处理器),感觉在前端布局写css样式来说是相当强大,效率又高,在用到SASS的时候感觉很爽。   首先说一下传统的CSS,在程序员的眼里感觉是一个很麻烦的东西,没有变量,也没有运算,还没有条件语句,感觉写的相当费事。  在人们都感觉费事的同时,真有牛人把CSS加入了编程的元素,这就是(CS
Stella981 Stella981
3年前
Julia
算术运算符算术运算符适用于所有的基本数值类型x,一元加法,就是x本身\x,一元减法,x的相反数xy,二元加法,做加法运算xy,二元减法,做减法运算x\y,乘法,做乘法运算x/y,除法,做除法运算x^y,乘方,x的y次幂x%y,取余,x除以y然后取余数,等价于
小万哥 小万哥
1年前
Python 运算符
运算符用于对变量和值执行操作。在下面的示例中,我们使用运算符将两个值相加:pythonprint(105)Python将运算符分为以下几组:算术运算符赋值运算符比较运算符逻辑运算符身份运算符成员运算符位运算符算术运算符算术运算符用于对数字值执行常见的数
小万哥 小万哥
10个月前
C# 运算符详解:包含算术、赋值、比较、逻辑运算符及 Math 类应用
运算符用于对变量和值执行操作。在C中,有多种运算符可用,包括算术运算符、关系运算符、逻辑运算符等。算术运算符算术运算符用于执行常见的数学运算:csharpintx10050;//加法,结果为150intyx30;//减法,结果为120intzx2;//乘
小万哥 小万哥
9个月前
Java 运算符详解与字符串处理技巧
Java运算符算术运算符算术运算符用于执行常见的数学运算。|运算符|名称|描述|示例||||||||加法|将两个值相加|xy|||减法|从一个值中减去另一个值|xy|||乘法|将两个值相乘|xy||/|除法|将一个值除以另一个值|x/y||%|取模|返