您现在的位置是:网站首页> 编程资料编程资料
CSS的Sass框架中常用的操作符的使用教程CSS框架sass的简单一览CSS的SASS样式编程指南学习CSS预处理器:Sass和less进行对比sass(scss)的安装与使用教程
2021-09-05
859人已围观
简介 这篇文章主要介绍了CSS的Sass框架中常用的操作符的使用教程,整理了一些基本的逻辑操作符和字符串操作符等的翻译和用法,需要的朋友可以参考下
赋值操作符
Sass 使用冒号( : )来定义一个变量:
CSS Code复制内容到剪贴板
- $main-color: lightgray;
算术操作符
算术操作符用于执行数学计算,下面是 Sass 所支持的算术操作符:
操作符 | 简介 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取余 |
注意,上面的操作符只能用于单位相同的数值运算:
CSS Code复制内容到剪贴板
- h2 {
- font-size: 5px + 2em; // 单位不一致,编译报错
- font-size: 5px + 2; // 7px
- }
此外,两个单位相同的数值相乘无法生成有效的 CSS:
CSS Code复制内容到剪贴板
- h2 {
- font-size: 5px * 2px; // invalid CSS
- }
如你所知,/ 操作符本身就是 CSS 简写语法的一部分,比如:
CSS Code复制内容到剪贴板
- font: 16px / 24px Arial sans-serif;
- background: url("http://example.com") no-repeat fixed center / cover;
但是,Sass 重载了该运算符,用于执行除法操作,下面让我们看看它是如何解析的:
CSS Code复制内容到剪贴板
- h2 {
- // 不执行除法操作,原样输出
- font-size: 16px / 24px;
- // 使用插值语法之后,原样输出
- font-size: #{$base-size} / #{$line-height};
- // 使用括号包裹之后,执行除法操作
- font-size: (16px / 24px);
- // 使用变量,执行除法操作
- font-size: $base-size / $line-height;
- // 调用函数,执行除法操作
- opacity: random(4) / 5;
- // 使用算术操作符,执行除法操作
- padding-right: 2px / 4px + 3px;
- }
Sass 中的操作符也具有优先级的概念,规则如下:
括号中的操作具有最高优先级
乘法、除法的优先级高于加法和减法
CSS Code复制内容到剪贴板
- h2 {
- width: 3px * 5 + 5px; // 20px
- width: 3 * (5px + 5px); // 30px
- width: 3px + (6px / 2) * 3; // 12px
- }
相等操作符
相等操作符常用于条件语句,用来比较左右运算子是否相等,最终返回布尔值:
操作符 | 简介 |
---|---|
== | 相等 |
!= | 不等 |
相等操作符适用于所有类型,下面来看两个示例。在第一个示例中,我们使用 == 来测试 $font 的类型,并输出对应的信息:
CSS Code复制内容到剪贴板
- @mixin font-fl($font){
- &:after {
- @if(type-of($font) == string) {
- content: 'My font is: #{$font}.';
- } @else {
- content: 'Sorry, the argument #{$font} is a #{type-of($font)}.';
- }
- }
- }
- h2{
- @include font-fl(sans-serif);
- }
编译结果:
CSS Code复制内容到剪贴板
- h2:after {
- content: 'My font is: sans-serif.';
- }
在第二个示例中,定义了一个列表并检查该列表的长度。通过使用 % 操作符,我们可以计算每个元素的长度,然后根据特定条件对 color 进行赋值:
CSS Code复制内容到剪贴板
- $list: "tomato", "lime", "lightblue";
- @mixin fg-color($property) {
- @each $item in $list {
- $color-length: str-length($item);
- @if( $color-length % 2 != 0 ) {
- #{$property}: unquote($item);
- }
- }
- }
- h2 {
- @include fg-color(color);
- }
编译结果:
CSS Code复制内容到剪贴板
- h2 {
- color: lightblue;
- }
- 这里需要提醒的是,Sass 不支持严格相等操作符 ===,不过从下面的示例中你会发现,Sass 解析 == 的原则就是严格相等:
- // 在 javascript 中
- ("5" == 5) // true
- ("5" === 5) // false
- // 在 Sass 中
- ("5" == 5) // false
- (20px == 20) // true (Libsass 不支持)
比较操作符
与相等操作符类似,比较操作符用来比较数值。在 Sass 中,支持以下比较操作符:
操作符 | 简介 |
---|---|
> | 大于 |
>= | 大于或者等于 |
< | 小于 |
<= | 小于或者等于 |
下面是一个简单的示例:
CSS Code复制内容到剪贴板
- $padding: 50px;
- h2 {
- @if($padding <= 20px) {
- padding: $padding;
- } @else {
- padding: $padding / 2;
- }
- }
编译结果:
CSS Code复制内容到剪贴板
- h2 {
- padding: 25px;
- }
逻辑操作符
逻辑操作符常用于测试多个条件表达式,Sass 支持的逻辑操作符如下所示:
操作符 | 条件 | 简介 |
---|---|---|
and | x and y | 与操作 |
or | x or y | 或操作 |
not | not x | 取反 |
下面通过一个示例来解释逻辑操作符的用法:定义一个 map,存储按钮的状态以及对应的颜色,然后创建一个条件语句,用来测试 map 内元素的多少。如果通过条件测试,那么就给 h2 添加 background-color 属性。代码如下所示:
CSS Code复制内容到剪贴板
提示:
本文由神整理自网络,如有侵权请联系本站删除!
本站声明:
1、本站所有资源均来源于互联网,不保证100%完整、不提供任何技术支持;
2、本站所发布的文章以及附件仅限用于学习和研究目的;不得将用于商业或者非法用途;否则由此产生的法律后果,本站概不负责!
本站声明:
1、本站所有资源均来源于互联网,不保证100%完整、不提供任何技术支持;
2、本站所发布的文章以及附件仅限用于学习和研究目的;不得将用于商业或者非法用途;否则由此产生的法律后果,本站概不负责!
相关内容
- CSS3对背景图片的裁剪及尺寸和位置的设定方法CSS3实现的全屏背景图片缩小渐变切换效果源码CSS的background属性及CSS3的背景图片设置总结jQuery+CSS3实现鼠标点击背景图片向上拉伸切换特效源码jquery+css3实现的网页背景图片固定内容切换特效源码多重CSS背景动画实现方法示例css实现的鼠标悬停360度背景图片做动画旋转效果css3实现背景图片拉伸效果像桌面壁纸一样css3背景图片透明叠加属性cross-fade简介及用法实例
- 用CSS3的box-reflect设置文字倒影效果的方法讲解CSS3制作文字半透明倒影效果的两种实现方式CSS图片倒影效果兼容firefox、IE等各主流浏览器Css3实现带倒影的3D图片走廊的效果代码
- 使用CSS媒体查询创建响应式布局教程响应式设计你需要了解的知识点响应式布局总结(推荐)css3media响应式布局实例像素密度与CSS3的viewport在移动端Web响应式布局中的运用使用CSS3的rem属性制作响应式页面布局的要点解析自适应屏幕的CSS响应式布局设计技巧总结响应式布局的简单案例
- html+css 清除浮动的相关技巧心得html/css中float浮动的用法实例详解HTML5 CSS3实现七彩变换的天空中白云漂浮动画效果源码Html+CSS浮动的广告条实现分解基于jQuery+CSS实现的浮动html菜单效果分享代码HTML5+CSS设置浮动却没有动反而在中间且错行的问题
- 你应该知道的3个CSS技巧css优化技巧自己实践心得10个CSS简写/优化技巧整理CSS中关于居中的小技巧个人小结css(html)背景图优化合并技巧详解CSS Hack技术介绍及常用的Hack技巧集锦29个常用的CSS小技巧汇总淘宝店铺导航装修怎么编辑?淘宝新旺铺导航CSS代码使用修改技巧10个必备的CSS技巧总结CSS中的inherit使用技巧小结CSS中行高line-height属性的一些使用技巧
- css使用flexbox布局容器内多元素水平居中利用CSS3的flexbox实现水平垂直居中与三列等高布局Flexbox制作CSS布局实现水平垂直居中的简单实例CSS3的Flexbox骰子布局的实现及问题讲解基础的CSS3弹性盒Flexbox布局使用实例CSS3的Flexbox布局的简明入门指南浅谈最全面的水平垂直居中方案与flexbox布局
- 在网页标题栏上和收藏夹显示网站logo的实现方法学习DIV+CSS网页布局之混合布局学习DIV+CSS网页布局之三列布局学习DIV+CSS网页布局之两列布局学习DIV+CSS网页布局之一列布局Dreamweaver编辑网页预览的时候显示乱码该怎么办?Dreamweaver怎么给网页添加Flash影片?
- 可自定义箭头样式的CSS3气泡提示框HTML中利用div+CSS实现简单的箭头图标的代码css 11种方法实现一个tips带有描边的小箭头css实现带箭头和圆点的轮播CSS3制作可自定义配置箭头的气泡提示框效果源码基于CSS实现带阴影和小箭头的黑色风格下拉菜单效果纯CSS3实现漂亮的input输入框动画样式库(Text input love)CSS实现让同一行文字和输入框对齐的方法利用HTML、CSS 实现带表情的评论框的制作教程CSS实现带箭头的提示框效果【示例代码】
- 6种非常炫酷的CSS3按钮边框动画特效纯CSS3实现的鼠标悬停文字线条边框动画特效源码CSS3基于SVG实现的多种鼠标滑过边框线条动画特效源码CSS3实现的鼠标滑过边框线条动画特效源码纯css3实现的鼠标滑过圆形边框动画特效源码jQuery+CSS3实现响应式鼠标悬停图片边框炫酷动画特效源码纯css3基于svg实现鼠标经过按钮边框线条动画特效源码CSS3实现6种炫酷的按钮边框动画特效源码利用SVG和CSS3来实现一个炫酷的边框动画CSS3实现的图片边框动画特效源码使用纯 CSS 创作一个渐变色动画边框
- CSS3制作炫酷带方向感应的鼠标滑过图片3D动画纯CSS3实现鼠标滑过按钮动画第二节CSS实现鼠标滑过鼠标点击代码写法纯CSS3实现8组超炫酷鼠标滑过图片动画css实现鼠标滑过五角星高亮效果 纯CSS实现鼠标滑过显示子菜单的二级菜单效果CSS实现鼠标滑过文字弹出一段说明文字无JS代码纯css实现鼠标滑过弹出层效果CSS控制当鼠标滑过时更换图片的效果css实现鼠标滑过改变文字(中文变英文)使用css的filter写鼠标滑过效果的实现示例
点击排行
本栏推荐
