Sass语法学习(1)

本文介绍了在Sass中使用@import合并文件的不同方法,详细解释了变量的使用,包括默认变量、特殊变量和多值变量(list和map),以及选择器和属性的嵌套。同时提及了Sass的全局变量和JavaScript基础知识,如WebWorker和WebSocket的相关概念。
摘要由CSDN通过智能技术生成

在sass中,使用@improt可以把多个不同的sass文件合成一个css文件,在合成的sass中有两种方式,

第一种:@import “demo2”,“demo3”,“demo4”;

第二种:@import “dem2”;@import “demo3”;@import “demo4”

第三种:在一个sass文件中,引入另一个sass文件;

3、变量

sass的变量必须是$开头,后面紧跟变量名,而变量值和变量名之间就需要使用冒号(:)分隔开(就像CSS属性设置一样),如果值后面加上!default则表示默认值。

3.1默认变量

sass的默认变量仅需要在值后面加上!default即可。

sass的默认变量一般是用来设置默认值,然后根据需求来覆盖的,覆盖的方式也很简单,只需要在默认变量之前重新声明下变量即可;

特殊变量

一般我们定义的变量都为属性值,可直接使用,但是如果变量作为属性或在某些特殊情况下等则必须要以#{$variables}形式使用。

3.2、多值变量

多值变量分为list类型和map类型,简单来说list类型有点像js中的数组,而map类型有点像js中的对象。

3.3、多值变量

多值变量分为list类型和map类型,简单来说list类型有点像js中的数组,而map类型有点像js中的对象。

3.3.1、list

list数据可通过空格,逗号或小括号分隔多个值,可用nth( v a r , var, var,index)取值。关于list数据操作还有很多其他函数如length( l i s t ) , j o i n ( list),join( list)join(list1,KaTeX parse error: Undefined control sequence: \[ at position 7: list2,\̲[̲separator]),append( l i s t , list, list,value,[$separator])等,具体可参考sass Functions(搜索List Functions即可)

定义

//一维数据

$px: 5px 10px 20px 30px;

//二维数据,相当于js中的二维数组

$px: 5px 10px, 20px 30px;

$px: (5px 10px) (20px 30px);

3.3.2、map

map数据以key和value成对出现,其中value又可以是list。格式为: m a p :   ( k e y 1 :   v a l u e 1 ,   k e y 2 :   v a l u e 2 ,   k e y 3 :   v a l u e 3 ) ; 。可通过 m a p − g e t ( map: (key1: value1, key2: value2, key3: value3);。可通过map-get( map: (key1: value1, key2: value2, key3: value3);。可通过mapget(map, k e y ) 取值。关于 m a p 数据还有很多其他函数如 m a p − m e r g e ( key)取值。关于map数据还有很多其他函数如map-merge( key)取值。关于map数据还有很多其他函数如mapmerge(map1, m a p 2 ) , m a p − k e y s ( map2),map-keys( map2)mapkeys(map),map-values($map)等,具体可参考sass Functions(搜索Map Functions即可)

定义

$heading: (h1: 2em, h2: 1.5em, h3: 1.2em);

全局变量

在变量值后面加上!global即为全局变量。这个目前还用不上,不过将会在sass 3.4后的版本中正式应用。目前的sass变量范围饱受诟病,所以才有了这个全局变量(现在已经能用上了)。

目前变量机制

在选择器中声明的变量会覆盖外面全局声明的变量。(这也就人们常说的sass没有局部变量)(实际测试sass是有局部变量的);

4、嵌套(Nesting)

sass的嵌套包括两种:一种是选择器的嵌套;另一种是属性的嵌套。我们一般说起或用到的都是选择器的嵌套。

4.1、选择器嵌套

所谓选择器嵌套指的是在一个选择器中嵌套另一个选择器来实现继承,从而增强了sass文件的结构性和可读性。

在选择器嵌套中,可以使用&表示父元素选择器

4.2、属性嵌套

所谓属性嵌套指的是有些属性拥有同一个开始单词,如border-width,border-color都是以border开头。

/sass style

//-------------------------------

.fakeshadow {

border: {

style: solid;

js基础

1)对js的理解?
2)请说出以下代码输出的值?
3)把以下代码,改写成依次输出0-9
4)如何区分数组对象,普通对象,函数对象
5)面向对象、面向过程
6)面向对象的三大基本特性
7)XML和JSON的区别?
8)Web Worker 和webSocket?
9)Javascript垃圾回收方法?
10)new操作符具体干了什么呢?
11)js延迟加载的方式有哪些?
12)WEB应用从服务器主动推送Data到客户端有那些方式?

js基础.PNG

前16.PNG

r 和webSocket?
9)Javascript垃圾回收方法?
10)new操作符具体干了什么呢?
11)js延迟加载的方式有哪些?
12)WEB应用从服务器主动推送Data到客户端有那些方式?

[外链图片转存中…(img-Tmwzuq0n-1714325430966)]

[外链图片转存中…(img-tzDmOF8V-1714325430967)]

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值