Sass的数据类型可以说是一个大家庭了,其数据类型中的数字、字符串、列表、颜色和布尔型,涵盖了大多数我们的需求。但是,正如一个框架开始的演变,在这个数据类型中还缺少一个关键性的工具:关联数组。...所以让我们看看如何创建一个关联数组(Sass中称之为Maps)。 这里有三个相同的值,对应添加了一个key,并且赋值给变量$objects。...$just-a-pinch-of: map-get($objects, mineral); // $just-a-pinch-of == salt 为什么这是一种新的数据类型,他的存在真的有意义吗?...print-styles($primary-nav, nav-item, is-expanded); } print-styles的@mixin嵌套了一个Maps,并且向下遍历其每一个子Maps,直到使用完...在将来的一周,我们将看一个Maps的用例,使用map-get功能,从变量中调用变量。
本文作者:IMWeb 刘起 原文出处:IMWeb社区 未经同意,禁止转载 Sass的数据类型可以说是一个大家庭了,其数据类型中的数字、字符串、列表、颜色和布尔型,涵盖了大多数我们的需求。...所以让我们看看如何创建一个关联数组(Sass中称之为Maps)。 这里有三个相同的值,对应添加了一个key,并且赋值给变量$objects。...$just-a-pinch-of: map-get($objects, mineral); // $just-a-pinch-of == salt 为什么这是一种新的数据类型,他的存在真的有意义吗?...在将来的一周,我们将看一个Maps的用例,使用map-get功能,从变量中调用变量。...如需转载烦请注明出处: 探索Sass3.3中的Maps(一)
1 .footer{ 2 width : percentage(.2); 3 } 分类: 字符串函数 数字函数 列表函数 颜色函数 Introspection函数 三元函数 自定义函数(根据自己的需求定义函数功能...); 使用规则: unquote只能删除字符串最前边和最后边的引号,没法去掉中间的引号。...; } 20 21 .test6 { 22 23 content: Hello Sass; } B)quote:给字符串添加引号(双引号)【加引号】 语法格式 :quote($string)...使用规则: 若字符串本身带有引号,就不添加; 若字符串带有单引号,则跟换为双引号; 若双引号中有单引号,则不变,单引号不受影响; 若字符串中间有空格或者半块的单引号、双引号时,需要用单引号或双引号括起...字符串中有引号也没有关系 字符串中有特殊字符也没有关系 2.数字函数 A) percentage($value):将一个不带单位的数转换成百分比值 结果/公式: $value * 100% 三种写法
string 为字符串类型 bool为布尔类型 color为颜色类型 >> type-of(100) “number” >>type-of...使用 map 可以很容易 收集键的值和动态插入。我们来回忆一下,在 Sass 中常用下面的方式定义变量: $default-color:#fff !...Maps的函数 前面介绍了使用map 来管理变量,但要在Sass 中获取变量,或者对map做更多有意的操作,我们必须 借助 map的函数功能 在Sass 中map 自身带了七个函数...Sass Maps的函数-map-get($map,$key) map-get($map,$key) 函数的作用是根据$key参数,返回$key 在$map 中对应的value 如果...map-get() 函数来实现; .btn-dribble{ color:map-get($social-colors,facebook); } 编译出来的
后来出现了几个css预处理器,比较常用的有:sass、less 、stylus。有了他们,我们可以对css进行一些简单的编程。...如果您对他们还不了解,可以查看一下他们的官网学习一下,vaw-layouts项目中使用的的预处理器是sass,因此本文也是基于sass进行讲解实现动态换肤的功能。...后来出现了几个css预处理器,比较常用的有:sass、less 、stylus。有了他们,我们可以对css进行一些简单的编程。...如果您对他们还不了解,可以查看一下他们的官网学习一下,vaw-layouts项目中使用的的预处理器是sass,因此本文也是基于sass进行讲解实现动态换肤的功能。...答案是不可以,因为预处理器是在我们开发阶段使用,一旦打包之后,他们就没有了,我们也就没办法再改这些值。所以我们还是老老实实写恶心的代码?
/downloads 安装sass:gem install sass 或者安装compass(含sass): gem install compass 取版本:sass -v 更新:gem update...: 有引号字符串 (quoted strings),如 “Lucida Grande” 、’http://sass-lang.com‘; 无引号字符串 (unquoted strings),如 sans-serifbold...(1, (2,3) ) //1,2,3 join(1,2) //1 2 append($list, $add, auto|space|comma) //$newList--- 将一个元素添加到列表...bgcolor: #f36, text-color:#fefefe, link-color: #d4e ) ); map-get...orientation: landscape) { width: 500px; } } } //使用插值
Sass 是一种 CSS 的预编译语言,预编译指在使用前需要先把它编译为 CSS,然后再交给浏览器执行。 Sass 中的变量提供了数据复用的方式,声明的变量可以用于选择器、属性和属性值等各种地方。...运算 在 Sass 中,我们可以使用 == 或 != 来对所有数据类型判断是否相等。此外,不同的数据类型也有各自不同的运算方式。 数字运算 由于数字具有不同类型,所以在计算的时候会进行类型转换。...,如 font: #{$font-size}/#{$line-height} 字符串运算 拼接字符串 可以使用 + 来拼接字符串。...: Myriad Pro; } 字符串插值 可以使用插值语法在字符串中插入数据。...map-get map-get(map, key) 用于获取指定键对应的值。
Sass 是一种预处理,它能让你使用一些 CSS 中没有的特性,比如:变量,嵌套(nesting),混入(mixins),继承等。这些特性能让 CSS 变的容易维护。更多描述见官网。...想尝试下 Sass ,可以尝试下在线编译,点这里。 指定编码格式 如果 Sass 文件中有中文,代码第一行必须加如下代码来指定编码格式,否则会报错。...支持字符串,数字,颜色,数组,Map 这几种数据类型。...// 字符串 $str: 'str1' + 'str2'; @debug $str; // 数字 4 + 5;// 9 5px + 2px;// 7px 5px - 2px;// 3px 10px *...$orange 红色部分的值 // Map $map: ('name': 'joel', 'gender': 'male'); map-get($map, 'name'); // 'joel' map-get
Sass的map使用一个括号,并用冒号将键值与值分隔开来,并且使用逗号将一对键值/值隔开。... );键值不一定是字符串,他可以是任何类型。...map中的最后一对键值/值后面的逗号可以省略键值必须是唯一的键值/值可以是Sass的任何类型,包括列表和其他的Sass mapMaps的主要操作使用的是 SassScript 函数。...map-get函数用于查找map中的值,map-merge函数用于添加值到map中的值, @each 指令可以用来为 map 中的每个键值对添加样式。map中键值对的顺序和map创建时始终相同。...Maps:用法跟例子 https://aotu.io/notes/2015/12/09/an-introduction-to-sass-maps/index.html使用Sass Maps https
好在有了sass,写css不再死板。sass对css的增强如下: 宏定义 宏定义的优点在于一处定义,多处使用,需要修改的时候只需要修改定义的地方即可。...= : 判断两个值是否相等/不相等 + - * / % >= and or not + - / 可用于字符串拼接 () 用于优先级设定 &父元素选择器 #{} 可以将sass表达式插入到...开头 ///为文档注释,不会被编译到css中,会被sassdoc工具使用,生成sass的文档 函数 scss中的函数主要用于数值计算,例如: scss: @function pow($base, $...中的数值类型包括以下几种:数值,字符串,颜色,List, Map,布尔值,null及函数 数值包含数字和单位,sass的强大之处在于支持带单位的运算,例如: @debug 1in + 6px;...prefixes-for-browsers($browsers) { $prefixes: (); @each $browser in $browsers { $prefixes: append($prefixes, map-get
但是,如果希望将该变量声明为全局变量,可以在变量赋值语句的末尾添加 !global 标志。...global; // 声明为全局变量 color: $color; // 使用全局变量 } } 4.3 Sass 变量值类型 Sass 支持 6 种主要的数据类型 数字::1、2、10px...sass 中支持的数字类型有哪些呢?...纯数字、百分号、css 部分单位 可以使用如下操作符作为运算 +、-、*、/、% 8.3.1 + .container { width: 50 + 20; width: 50 + 20%...+ 可用于连接字符串 注意:如果有引号字符串(位于 + 左侧)连接无引号字符串,运算结果式有引号的,相反,无引号字符串(位于 + 左侧)连接有引号字符串,运算结果则没有引号。
它是一种无论你想怎么样使用,大都能顺利转换成 CSS 的程序语言。 Sass和Less都属于预处理器。Less文件以.less结尾,Sass文件新版的以.scss结尾,老版的以.sass结尾。...default; /* 全局变量和局部变量 在局部变量后添加 !...global; //添加 !...{$key}这个键"; //错误@error 会中断 sass 监听 @error "在映射中没有#{$key}这个键"; } @return map-get...---- 在Sass中混入,用@mixin方法定义要混入的样式,用@include将方法混入。就是编写代码块和使用代码块。
从语法开始但是语法也不是一两句的事情,首先看基本的导入,使用 一,sass有两种后缀名文件:一种后缀名为sass,不使用大括号和分号;另一种就是我们这里使用的scss文件,建议scss....二,导入 使用@import导入但是和css导入有点区别。...比如基础的文件命名:_mixin.scss导入的时候可以省略下划线写成:@import "mixin" 三,注释 sass有两种注释方式,一种是标准的css注释方式/* */, 另一种则是//双斜杆形式的单行注释...default表示默认值,sass是没有局部变量的 1,普通变量 $f:12px; body{font-size:$f;} 2,默认变量 $f:12px !...可通过map-get($map,$key)取值 格式:$map:(key1:val1,key2:val2); map-m($map1,$map2),map-key($map),map-values
但是我所想到的是一些简单而直观的内容——不涉及结构更改,而是使用 CSS 自定义属性甚至 Sass 变量。 CSS 自定义属性和 JavaScript 自定义属性在这里应该不会令人感到惊讶。...exportedValue 不需要被引用,因为它已经被当作文本字符串了。 有很多方法可以方便地访问 JavaScript 中的 Sass 变量。我倾向于使用这种共享断点的方法。.../ etc. ); // Sass variables for writing out media queries $media: ( mobile: '(max-width: #{map-get...unquote(map-get($media, mobile)); breakpointTablet: unquote(map-get($media, tablet)); // etc. }...无需对你已经在使用和正在编写的 CSS 和 JavaScript 进行疯狂的修改。
中通常会使用 Sass 编写样式代码,Laravel 默认提供的样式代码也是 scss 结尾的,也是使用的 Sass 语言。...所以我们来了解下 Sass 的安装和使用,非常简单,即学即用。 2、Sass 简介和安装 Sass 是对 CSS 的扩展,让 CSS 语言更强大、优雅。...Sass 具有两种不同的后缀名分别对应两套语法,最早 Sass 使用的是缩进式语法,使用缩进来区分代码块,并通过分号将具体样式分开,这种语法以 .sass 作为后缀;另一种使用了和 CSS 一样的块语法...变量 和 PHP 一样,Sass 的变量通过 $ 作为标识符,Sass 支持的数据结构包括数字、字符串、数组、颜色、布尔值、null、List、Map、函数引用(如果你不了解 Python 或 Java...medium: 992px, large: 1200px ); // 变量作为插入变量需要通过 #{} 引入,通过 map_get 函数从 Map 中获取值 @media (min-width: #{map-get
用percentage函数做示例 分类: 字符串函数 数字函数 列表函数 颜色函数 Introspection函数 三元函数 自定义函数(根据自己的需求定义函数功能) ...其他一些函数等 前四种最常用... 1.字符串函数 字符串函数顾名思义就是用来处理字符串的函数 A) unquote:删除字符串的引号(单/双引)【去引号】 语法格式: :unquote($string); 使用规则: unquote...示例: SCSS CSS B)quote:给字符串添加引号(双引号)【加引号】 语法格式 :quote($string) 使用规则: 若字符串本身带有引号,就不添加; 若字符串带有单引号,则跟换为双引号...字符串中有引号也没有关系 字符串中有特殊字符也没有关系 2.数字函数 A) percentage($value):将一个不带单位的数转换成百分比值 结果/公式: $value * 100% 三种写法...@debug @debug 在 Sass 中是用来调试的, 当你的在 Sass 的源码中使用了 @debug 指令之后,Sass 代码在编译出错时,在命令终端会输出你设置的提示 Bug //@debug
SASS 是 CSS 的预处理器,由 Ruby 编写。一开始并不支持 {} 和这种原生 CSS 的写法,缩进也严格控制,增加了开发者的使用成本。具体的区别可以看下面这张 gif 图。...sass 之前,需要知道一些知识点。...、icon-success、icon-secondary 等,但是他们的值又都是变量,写法如下: map-get map-get(map,key) 函数的作用是根据 key 参数,返回 key 在 map...假设要获取 facebook 键值对应的值 #3b5998,我们就可以使用 map-get() 函数来实现: 使用&嵌套覆盖原有样式 当一个元素的样式在另一个容器中有其他指定的样式时,可以使用嵌套选择器让他们保持在同一个地方...定义混合指令,切换主题,并将主题中的所有规则添加到 theme-map 中 // .
使用SASS做个可自定义主题的网页 Posted November 28, 2018 本篇的代码已托管在 jackeyGao / sass-theme ---- Sass 是对 CSS 的扩展,让 CSS...它允许你使用变量、嵌套规则、 mixins、导入等众多功能, 并且完全兼容 CSS 语法。...Sass 有助于保持大型样式表结构良好, 同时也让你能够快速开始小型项目, 特别是在搭配 Compass 样式库一同使用时。...我们开始本篇的东西 准备 首先安装 Sass , 这是一个 ruby 的工具, 使用 gem 可以快速安装....#{$theme} .main { background: map-get($config, 'bg'); color: map-get($config, 'color
file multiple times, it can slow down compilation, cause override conflicts, and generate duplicate output...'sass:math' as *; $half: percentage(1/2); Internal functions that already had prefixed names, like map-get...or str-index. can be used without duplicating that prefix: @use 'sass:map'; @use 'sass:string'; $map-get...This works similar to @use but it only returns generated CSS output, and it can be used dynamically...If the forwarded partials contain actual CSS, that will also be passed along without generating output
领取专属 10元无门槛券
手把手带您无忧上云