sass学习笔记

【SCSS入门】3、SCSS的基本语法 Sass(Syntactically Awesome Stylesheets)是一种强大的CSS预处理器,它通过引入变量、嵌套、混合(mixins)、继承和函数等高级特性,显著增强了CSS的功能和灵活性。Sass允许你使用更简洁和模块化的语法来编写样式表,从而提高代码的可读性和可维护性。变量使得颜色、字体和其他值可以重复使用,嵌套规则让样式结构更加清晰,混合可以创建可重用的代码块,继承和函数则提供了更高级的样式控制。最终,Sass代码会被编译成标准的CSS,使其兼容所有浏览器。这种预处理器特别适用于大型项目 阅读详情

scss基础知识学习笔记

1. 使用变量

1.1、声明变量与使用变量

变量名以$开头,名字自定义。
$font-size: 14px;
$border: 1px solid violet;
使用方法
	$font-size: 14px;		/* 声明变量 */
	.violet {
		font-size: $font-size;	/* 使用变量 */
		$width: 15px;	/* 声明变量 */
		width: $width;	/* 使用变量 */
	}

1.2、变量名使用中划线和下划线是一样的

	$color: violet;
	div {
		color: $color;
		$font-size: 50px;	/* 以中划线声明 */
		font-size: $font_size;		/* 取值时用下划线也可以访问 */
	}

2、嵌套css规则

	div {
		color: violet;
		$font-size: 50px;
		font-size: $font_size;
		span {	/* 子元素的css嵌套在父元素中 */
			color: pink;
		}
	}

2.1、父选择器的标识符&

	.inner {
		color: violet;
		$font-size: 50px;
		font-size: $font_size;
		span {
			color: pink;
		}
		&:hover {	/* 表示父元素hover时的样式,不会传递到子元素 */
			color: red;
		}
		.outer & {	/* 可以在父选择器上再加上父选择器 */
			border: 1px solid violet;
		}
	}

2.2、群组选择器的嵌套

	/**
	 *  css写法
	 *  .container h1, .container h2, .container h3 { margin-bottom: .8em }	
	 * 以下为scss写法
	 */
	.container {
		h1, h2, h3 {margin-bottom: .8em}
	}
	/**
	 * css写法
	 * nav a, aside a {color: blue}
	 * 以下为scss写法
	 */
	nav, aside {
		a {color: blue}
	}

2.3、子组合选择器和同层组合选择器:>、+和~

	.inner {
		color: violet;
		$font-size: 50px;
		font-size: $font_size;
		> span {	/* 选中直接子元素中的span元素 */
			color: pink;
		}
		+ .next {	/* 同级元素中紧挨着的下一个.next元素 */
			color: skyblue;
		}
		~ label {	/* 选中同级元素中所有的label元素 */
			font-size: 40px;
		}
	}

2.3、嵌套css属性

	.outer & {
		/**
		 *  css写法,以下为scss嵌套属性写法
		 *  border-width: 2px;
		 *	border-style: dashed;
		 *	border-color: violet;
		 */
    border: {	
      width: 2px;
      style: dashed;
      color: violet;
    }
		border: 1px solid red {
			left: 0;
			right: 0;
		}
  }

3.导入sass文件

使用@import来导入scss文件,可以省略文件后缀.scss或.sass,被导入的文件中所有的变量,函数,mixin等都可以直接使用。
在这里插入图片描述

3.1、使用sass部分文件

通过@import导入的文件并不会生成独立的css文件,这些文件被称为局部文件。
如图所示,.scss文件编译后会生成对应的.css文件和其他的一些文件,编译时被导入的文件并没有生成相应的.css文件。

在这里插入图片描述
对局部文件有一些特殊约定,即用文件名以下划线开头,如:_other.scss,而导入这个.scss文件时可以省略下划线,如下图:
在这里插入图片描述

3.2、默认变量值

	/* 给变量赋予默认值,如果其他地方对这个变量声明赋值red,就采取那个值red,否者就使用默认值violet */
	$leona-color: violet !default;

3.3、嵌套导入

sass允许@import命令直接写在css规则内,生成.css文件时,局部文件会直接嵌套到它导入的地方
	/* 在css规则内导入.sass文件,局部文件中的样式会嵌套在导入的地方,局部文件中的变量和混合器也只会在该范围内生效 */
	.annie {
		@import 'annie';
	}

3.4、原生css导入

sass兼容原生的css,所以它也支持原生的css@import。
在下列的三种情况下会发生原生的css@import,这回造成浏览器解析css的额外下载:
* 被导入文件的名字以.css结尾;
* 被导入文件的名字是一个URL地址(比如http://www.sass.hk/css/css.css),由此可用谷歌字体API提供的相应服务;
* 被导入文件的名字是CSS的url()值

4、静默注释

sass中有两种注释方式:
	.leona {
		border: $leona-border;	// border	这种注释在生成的.css文件中不会显示,即静默注释
		color: $leona-color;	/* font color 这种注释会在生成的.css文件中显示 */
	}
	
	// 生成的.css文件中可以看到注释
	.leona {
	  border: 1px solid violet;
	  color: pink;
	  /* font color */ }

5、混合器

混合器使用@mixin标识符来定义,用来给一大段代码赋予一个名字。这样就可以通过引用这个名字来实现代码重用。
	// 使用@mixin为一段代码赋予名字
	@mixin border-round {
		-moz-border-radius: 5px;
	  -webkit-border-radius: 5px;
	  border-radius: 5px;
	}
	
	.leona {
		border: $leona-border;	// border
		color: $leona-color;	/* font color */
		@include border-round;	// 使用@include 来引用,@mixin中定义的代码就会嵌入这里
	}
混合器使用过量会导致生成的样式表过大,代码加载缓慢。

5.1、何时使用混合器

当你能为混合器起一个合适的名字的时候那么就应该使用混合器,如:
	// 混合器就是用来描述文本样式的,可以起一个直观的名字
	@mixin text-style {
		color: violet;
		font-size: 16px;
		line-height: 32px;
		font-style: normal;
		font-weight: bold;
	}
	.ahri {
		@include text-style;
	}

5.2、给混合器传参

混合器并不总是生成相同的样式,通过给混合器传参数来生成更加精确的样式。语法规则类似javascript的function
	// 定义混合器时制定需要哪些参数
	@mixin text-style($color,$font-size,$line-height,$font-weight) {
		color: $color;
		font-size: $font-size;
		line-height: $line-height;
		font-style: normal;
		font-weight: $font-weight;
	}
	.ahri {	
		@include text-style(violet,20px,40px,normal);		// 调用混合器时传入参数
	}

5.3、默认参数值

使用混合器时有时也不需要传入所有的参数,可以给参数制定默认值。
	// 定义混合器时给所有的参数都指定了默认值
	@mixin border-style($width: 2px,$color: violet,$style: dashed) {
		border: $width $style $color;
	}
	.annie {
		@include border-style;	// 无参调用,全部使用默认值
		@include border-style(5px);	// 只有width使用自定义值
		@include border-style(5px,red);	// 只有style使用默认值
		@include border-style(5px,red,solid);	// 全部使用自定义值
	}

6、使用选择器继承来精简css

使用sass的时候,最后一个减少重复的主要特性就是选择器继承。
	// 定义选择器样式
	.border-style {
		border-width: 2px;
		border-style: dashed;
		border-color: red;
	}
	.annie {
		@extend .border-style;	// 继承选择器样式
	}

6.1、继承的高级用法

任何css规则都可以继承其它规则,几乎任何css规则都可以被继承。所以你可以继承一个html元素的样式。
默认的浏览器样式不会被继承,因为它们不属于样式表中的样式,但是你对html元素添加的所有样式都会被继承。

我特么照着例子写怎么都报错???html元素继承还需要定义??

6.2、继承的工作细节

  • 跟混合器相比,继承生成的css代码相对更少。因为继承仅仅是重复选择器,而不会重复属性,所以使用继承往往比混合器生成的css体积更小。如果你非常关心你站点的速度,请牢记这一点。
  • 继承遵从css层叠的规则。当两个不同的css规则应用到同一个html元素上时,并且这两个不同的css规则对同一属性的修饰存在不同的值,css层叠规则会决定应用哪个样式。相当直观:通常权重更高的选择器胜出,如果权重相同,定义在后边的规则胜出。
Fofa API高阶玩法:用Python批量获取漏洞资产(含OA系统扫描实战) 本文详细介绍了如何利用Python结合Fofa API实现自动化漏洞资产收集的高阶实战技巧。通过构建健壮的客户端、设计精准查询语法、实现多线程批量采集,并以OA系统漏洞扫描为例,演示了从资产发现、过滤验证到报告生成的全流程,旨在提升安全运维与应急响应的效率。 阅读详情

相关推荐

04目标检测-Two-stage的目标检测算法

前面我们对进行了对比分析,同时上一篇我们介绍了传统算法在目标检测的原理和效果,此篇我们记录了我学习目标检测算法的深度,深入讲述一下深度学习算法在目标检测的原理和效果。原文链接:https://blog.youkuaiyun.com/qq_41946216/article/details/132800752。版权声明:本文为优快云博主「爱吃面的猫」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。One-stage(YOLO和SSD系列):直接回归目标位置。

qq_41946216的博客 3650

Scss 基本使用(变量、嵌套)

1. Scss 简介 Sass (Syntactically Awesome Stylesheets) 是一种动态样式语言,Sass 语法属于缩排语法,比 css 比多出好些功能 (如:变量、嵌套、运算,混入(Mixin)、继承、颜色处理,函数等),更容易阅读。 Sass 的缩排语法,对于写惯 css 前端的 web 开发者来说很不直观,也不能将 css 代码加入到 Sass 里面。 因此对 Sass 语法进行了改良,Sass3 就变成了 Scss(Sassy CSS)。SCSS(Sassy CSS) 是

明天也要努力的博客 3万+

如何使用JMeter进行大模型的压力测试?

使用JMeter进行大模型的压力测试,核心是通过模拟高并发请求,测试大模型在极限负载下的性能表现(如响应时间、吞吐量、错误率、资源瓶颈等)。通过以上步骤,可系统性评估大模型在高压下的性能极限,为优化模型(如量化、蒸馏)、扩容硬件(增加GPU)或调整接口限流策略提供数据依据。)、请求方式(POST)、认证方式(API Key放在Header)、请求参数(作用:避免瞬间高压压垮系统,更精准找到瓶颈点。等)、响应格式(同步/流式)。需获取:API地址(如。通过CSV文件引入不同。

alankuo的专栏 790

scss的基本用法

scss的基本用法 一、使用变量   sass 让人们受益的一个重要特性就是为 CSS 引入了变量。你可以把反复使用的 CSS 属性值 定义成变量,然后通过变量名来引用它们,而无需重复书写这一属性值。或者,对于仅使用过一 次的属性值,你可以赋予其一个易懂的变量名,...

apqm78637的博客 2828

阿里云大模型ACP认证模拟考试(二)

摘要:在阿里云大模型高级工程师 ACP 认证暂无真题题库的现状下,模拟题具有重要意义。其依照真实考试设计,涵盖题型、题量与分值分布,助力考生熟悉考试框架,合理分配答题时间精力,提升效率。同时,模拟题紧扣官方课程,能帮助考生精准定位知识盲点,如大模型架构原理和通义千问应用实践等重点内容,以便针对性完善知识体系。此外,通过练习模拟题,考生可掌握不同题型的解题思维与技巧,快速洞察复杂题目本质,提高答题准确率。

davidkorhenn的博客 2077

Anomalib库安装以及使用

Anomalib是一个专注于异常检测的深度学习库。它的目标是收集最新的异常检测算法,并提供用于在公共和私有数据集上进行基准测试的工具。该库提供了一系列已实现的异常检测算法,这些算法在最近的文献中有所描述。此外,Anomalib还提供了一套工具,方便开发人员开发和实现自定义模型。该库特别注重基于图像的异常检测,旨在识别数据集中的异常图像或图像中的异常像素区域。通过使用Anomalib,用户可以快速构建和评估各种异常检测算法,以满足其特定需求。

mingo_敏 5200

scss中使用变量

样例 <template> <div class="scss_content">scss 中变量的定义使用</div> </template> $color:red; .scss_content{ color:$color; } 效果图: scss 的作用域。 如上图,定义在scss_content 中的 $borderColor ,用在 scss_footer 中就报错了 只能用在它本身的作用域下,即是 .sc

weixin_43910427的博客 1万+

QGis二次开发 —— 2、第一个程序 - 加载栅格tif与矢量shp文件(附源码)

QGis二次开发 —— 2、第一个程序 - 加载栅格tif与矢量shp文件(附源码)

1100

在Scss中使用变量

然后在样式规则中使用这些变量。这样可以提高代码的可维护性和可读性,因为你只需要在变量的声明处修改值,就能够在整个样式表中生效。这种方式使得你能够在整个项目中维护一组共享的变量,使得样式表更加一致和可维护。请注意,SCSS 中的变量是动态的,可以随时更改其值。这使得在整个样式表中共享和重用值成为可能。这样的文件来存放共享的变量,然后在其他文件中引入这个文件。这样,你就可以在这两个文件中使用相同的变量。要在 SCSS 中创建变量,可以使用。在上述例子中,我们定义了两个变量。文件包含了共享的变量,然后在。

大大 4008

Oracle EBS(R12+)通过Multi-Org 多组织架构、Multi-Ledger 多账簿、SLA 子分类账会计、多币种引擎、多会计政策并行五大核心能力,为跨国企业提供一体化、自动化、合规的

Oracle EBS(R12+)提供全球会计核算解决方案,通过Multi-Org多组织架构实现跨国集团数据隔离与共享,支持四层组织结构(业务组→法律实体→经营单位→库存组织)。Multi-Ledger多账簿功能允许一笔业务多准则自动核算,包含主账簿、辅助账簿和报告币种。系统内置多币种处理引擎,覆盖全流程货币业务,支持自动重估、再计量和折算。通过SLA子分类账会计实现多会计政策并行处理,满足不同国家会计准则和税制要求。该方案可同时支持本地法定、集团合并及管理分析需求,实现全球财务数据集中管理,提升合规性和运营

金牌架构师 553

基于Simulink的固态变压器(SST)多级协同控制​

本文介绍了基于Simulink的固态变压器(SST)多级协同控制方法。SST作为智能电网关键设备,其三级架构(AC-DC整流、DC-DC隔离、DC-AC逆变)存在级间耦合问题。文章提出纵向解耦与横向联动相结合的协同控制策略,详细推导了各级控制算法,并通过Simulink实现了10kV/400V级联型SST系统建模。仿真结果显示,在±20%电网波动和0-100%负载跳变下,系统能保持直流母线电压波动<2%。文章还提供了工程部署建议和代码生成方法,为SST的研发提供了实用指导。

amy_mhd的博客 301

sass 学习笔记

—通过。

... 1387

LabVIEW实现TCP通信

在本节中,我们将简要探讨TCP通信的基础知识,并以工业物联网平台TLINK中的云端设备数据发布设计为例,详细阐述在互联网环境下TCP客户端应用程序设计的基本方法。

不脱发的程序猿 1962

Sass学习笔记

Sass学习笔记,包含Sass和Vue整合等内容

Arier_six的博客 260

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

SASS 学习笔记

SASS 是 CSS 预处理,它提供了变量(虽然现在 CSS 也提供了,不过 SASS 的更加灵活),嵌套、mixin、函数、导入和扩展等功能,可以高效地做到代码复用。SASS 包括 SASS 和 SCSS,二者都支持嵌套、mixin 和变量,主要的区别在:语法SCSS 的语法更加贴近 CSS,而 SASS 不适用{}和;,并且依赖缩进定义结构(有点类似 python 的写法)因此 SASS 的排版必然是更加简洁和美观的,相对而言刚从 CSS 转到 SASS 也有可能会不太适应兼容性。

GoldenaArcher的博客 1612

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

SASS 学习笔记 II

上篇笔记,中包含:配置变量嵌套这里加一个扩展,嵌套中有一个的用法,使用可以指代当前 block 中的 selector,后面可以追加其他的选择器。如当前的 scope 是form,可以在嵌套中使用&-selector指代,如:

GoldenaArcher的博客 1815

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Sass学习笔记总结

Sass笔记总结 Sass快速入门

欢迎访问我的主页:https://www.bookbook.cc 3万+

sass 学习笔记1

sass 学习的第一篇

Choiceanxiety的博客 1648

Sass 学习笔记

Sass 学习笔记 Sass 是一款强化 CSS 的辅助工具,它在 CSS 语法的基础上增加了变量 (variables)、嵌套 (nested rules)、混合 (mixins)、导入 (inline imports) 等高级功能,这些拓展令 CSS 更加强大与优雅。使用 Sass 以及 Sass 的样式库(如 Compass)有助于更好地组织管理样式文件,以及更高效地开发项目。 一. CSS 功能扩展 1.嵌套规则 #main p { color: #00ff00; width: 97%;

紫一的博客 287

sass和compass学习笔记

sass和compass学习笔记 学习sass和compass做成的思维导图: 以下是补充: 1、对比起混合器,使用继承生成的css代码体积会更小,因为只是重复了选择器 2、.scss(使用大括号)和.sass(使用缩进)可以在同一个项目中使用,但不能在同个文件使用 3、原生css@import会降低性能,必须先把引用文件下载才能渲染 4、sass是css的超集,支持css的所有用...

Anerror的博客 381

使用sass_Sass学习笔记

我的Sass学习路径:一.Sass简介-慕课网 + Sass安装-慕课网二.Sass官网的介绍和入门教程三.侧栏工具条开发-慕课网+Sass用法指南 - 阮一峰的网络日志四.sass(基础篇)-慕课网+sass(进阶篇)-慕课网+sass(高级篇)-慕课网五.Sass官网手册+Sass入门篇-慕课网(中文参考资料)+Sass进阶篇-慕课网(中文参考资料)----------------------...

weixin_39609573的博客 115

sass的学习笔记

文章目录sass的学习笔记一.sass的介绍二.环境搭建及编译指令1.sass编译环境:将sass代码编译成css代码(html加载的还是css代码)2.利用ruby环境进行编译 - 配置ruby环境三.编译后输出格式四.sass扩展名五.sass-变量的定义(重点)六.注释--(重点)七.sass-嵌套--(重点)八.Sass-mixin函数--重点九.Sass-继承扩展--@extend--重点十.Sass-导入(局部文件)--重点十一.Sass-判断语句十二.Sass-数组/map十三.Sass-循环

lwr3379966的博客 442

Sass学习笔记-Sass快速入门03

文章目录一、字符串函数1.1 to-upper-case() 全部转为大写1.2 to-lower-case() 全部转为小写1.3 str-length() 返回字符串长度1.4 str-index() 返回指定字符在字符串中首次出现的位置1.5 str-insert()二、颜色2.1 颜色函数 RGB与RGBA2.2 颜色函数 hsl与hsla2.3颜色函数 adjust-hue2.4 颜色函...

欢迎访问我的主页:https://www.bookbook.cc 7626
上一篇: input输入框在输入中文时的compositionstart和compositionend事件
下一篇: 常见的多种在线代码编辑器
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值