Sass的运算

本节我们学习 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 代码中可以看出,当一个表达式中有多种运算符时,和数学中一样,先算乘除再算加减,有括号则先算括号里的。

点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

SASS基础

特点:1.在css基础上增加特性:变量、嵌套(nesting)、混合(@mixin)、继承(@extend);2.通过函数进行颜色值与属性值的运算;3.提供控制指令等高级功能;4.自定义输出指令;数据类型:Sass和JavaScript语言类似,也具有自己的数据类型,在Sass中包含以下几种数据类型:1\

一篇文章带你了解Python运算符重载

您可以根据所使用的操作数来更改Python中运算符的含义。这种做法称为运算符重载,今天我们一起来聊聊运算符重载。一、什么是Python中的运算符重载?Python运算符用于内置类。但是相同的运算符对不同的类型有不同的行为。例如,运算符将对两个数字执行算术加法、合并两个列表并连接两个字符串。Python中的这一功能允许同一运算符根据上下文具有不同的含

一篇文章带你了解Python运算符重载

您可以根据所使用的操作数来更改Python中运算符的含义。这种做法称为运算符重载,今天我们一起来聊聊运算符重载。一、什么是Python中的运算符重载?Python运算符用于内置类。但是相同的运算符对不同的类型有不同的行为。例如,运算符将对两个数字执行算术加法、合并两个列表并连接两个字符串。Python中的这一功能允许同一运算符根据上下文具有不同的含

thinkphp3.2.3模板渲染支持三元表达式

thinkphp3.2.3模板渲染支持三元表达式{$status?'正常':'错误'}{$info'status'?$info'msg':$info'error'}注意:三元运算符中暂时不支持点语法。如下:           <divclass"modalhidefade"id'myModa

CSS预处理器SASS用法和koala工具的使用

   最近在学习前端的时候,发现了一个SASS(CSS预处理器),感觉在前端布局写css样式来说是相当强大,效率又高,在用到SASS的时候感觉很爽。   首先说一下传统的CSS,在程序员的眼里感觉是一个很麻烦的东西,没有变量,也没有运算,还没有条件语句,感觉写的相当费事。  在人们都感觉费事的同时,真有牛人把CSS加入了编程的元素,这就是(CS