sass学习笔记

普冉(PUYA)单片机开发笔记 [完结篇]:使用体会 这一篇是 PY32F003 应用实验的完结篇,总结了对这颗 MCU 的使用体会。我已经把自己实验用的代码打包上传,供各位码神参考。 阅读详情

sass的作用:

  • 使开发更高效,减少沉余的代码,使代码结构更清晰,更有力于维护。
  1. 变量
  2. 规则嵌套
  3. 属性嵌套
  4. 文件导入
  5. @mixin混合器
  6. @extend 选择器继承

1. 变量

  1. 全局变量

在css规则块外面声音的变量

  1. 局部变量

在css规则内声音的变量

  • 变量声明
声明方式应用场景
$color: red;赋于一个值
$border: 1px solid #ccc;声明一个border简写属性值,用空格分隔
$font-family: ‘宋体’, ‘微软雅黑’声音一个字体系列, 用逗号分隔

任何css属性值都可用于变量值

  • 变量调用
  1. 声明一个颜色为红色的变量:
    $color: red;
  2. 调用变量
    body{ color: $color; }

在任何地方有需要使用的变量的地方都可以调用 , 变量中也可以调用已声明的变量

变量默认值(!default)

$link-color: red !default; 的变量声明 优先级 是最低的,不会覆盖同名的变量;(当导入时,用于修改变量默认值,但要在导入前申明)
比如: 当用@import 导入一个scss文件时,如果已经在scss文件中声明这个变量时,而被导入的scss文件中也声音了这个变量默认值,则不会覆盖已经声音的变量;

例 :

1. var.scss 文件

$link-color: red !default; /* 优先级低于一般变量 */
a:link{
	color:$link-color;
}

2. demo.scss 文件

$link-color: skybule;

@import 'var';  /* 导入var.scss文件 */

/*编译结果*/
a:link {
	color: skybule;
}

2.规则嵌套

  • 普通嵌套(后代选择器)
body {
	color: red;
	h1 {
		font-size: 12px;
	}
	h2 {
		font-weight: 700;
		color: blue;
	}
}

/* 编译结果 */
body{
	color: red;
}
body h1{
	font-size: 12px;
}
body h2{
	font-weight: 700;
	color: blue;
}
  • 特别嵌套
  1. 父选择器 & (普通、交集、伪类、伪元素)
/* 一、普通应用场景 */
.box {
	body & {color: red;}
}

/* 编译结果 */
body .box {color:red;}

/* 二、交集应用场景 */
.box {
	&.box1{
		border: 1px solid red;
	}
}

/* 编译结果 */
.box.box1 {border: 1px solid red;}

/* 三、伪类应用场景 */

a {
	&:link { color: #999; }
	&:visited {color: #000;}
	&:hover {color:#c00;}
	&:active{color: blue;}
}

/*编译结果*/
a:link{color: #999;}
a:visited{color: #000;}
a:hover{color: #c00;}
a:active{color: blue;}

/* 四、伪元素应用场景 */
.clearfix{
	&::after,
	&::before{
		content: '';
		display: table;
	}
	&::after{
		clear: both;
	}
}

/* 编译结果 */
.clearfix::after,
.clearfix::before{
	content: '';
	display: table;
}
.clearfix::after {
	clear: both;
}
  1. 子元素选择器 >、兄弟选择器 ~ 、相邻选择器 +
.box {
   > div {
   	float: left;
   	width: 100px;
   	height: 40px;
   }
   ~ section {
   	font-size: 14px;
   	background-color: #ccc;
   }
   + aside{
   	font-size: 16px;
   	height: 1em;
   	line-height: 1em;
   }
}

/* 编译结果 */
/*选择.box元素下的直接是div标签元素*/
.box > div {float:left; width: 100px; height: 100px;}
/*选择与.box元素同级的section元素*/
.box ~ section {font-size: 14px; background-color: #ccc;}
/*选择紧根.box元素相邻的aside元素*/
.box + aside {font-size: 16px; height: 1em; line-height: 1em;}

嵌套的优点:

  1. 阅读性强,便于维护理解
  2. 可节省多余的书写代码
  3. 加快开发效率,节省时间

3.属性嵌套

div{
	width: 100px;
	height: 100px;
	/* 属性嵌套 */
	border: 1px solid blue {
		left: 2px dotted red;
		top: {
			color: green;
		}
	};
	margin: {
		left: 20px;
		top: 30px;
	}
}

/* 编译结果 */
div {
    width: 100px;
    height: 100px;
    border: 1px solid blue;
    border-left: 2px dotted red;
    border-top-color: green;
    margin-left: 20px;
    margin-top: 30px;
}

4.文件导入

  • 局部文件导入

局部文件是以下划线 _ 开头命名的文件, 编译时不会生成css文件
导入时,可以直接省略下划线

  • 一般文件导入

两者都是采用 @import 语法导入, 可以省略_开头、.scss后缀

  • 嵌套导入(规则中导入)
1. var.scss 文件

$link-color: red !default;
a:link{
	color: $link-color;
}

2. demo.scss 文件
/* 导入var文件 */

h1 {
 @import 'var';
}

/* 编译结果 */
h1 a:link{
	color: red;
}

在被导入的文件中,申明的变量只在规则内有效,属于局部变量

@mixin混合器
当只是简单的要设置共同的颜色、字体或边框等这些一条样式时, 可以采用默认变量值的方式。
而当有大量的规则或属性相同的时候,这个时候混合器上场的时候了。

那什么时候用类,什么时候用混合器呢?
当是为了体现标签语义化的时候,这个时候采用类。
当是为了表现效果与外观时,而应该用到混合器。
tip: 不因该强制的去对大断相同样式采用混合器,而当能更好的用有效的名字的时候,才因该去用。

  • 普通混合器
/* 只包含属于的混合器 */
@mixin rounded {
	width: 100px;
	height: 100px;
	background-color: red;
	border-radius: 50%;
}
/* 既包含规则也包含属性的混合器, 当只有规则时,可以在最外层直接用 @include 调用  */
@mixin setColor {
	color: #fff;
	
	.box {
		color: red;
	}
}

/* 调用  */

.header {
	@include setColor();
}

/* 编译结果 */
.header {
	color: #fff;
}

.header .box {
	color: red;
}
  1. 当混合器中只有规则,而没有属性时,可以直接在最外层调用
  2. 混合器中也能用 父选择器 &, 生成css时,&直接用在所调用的层级的中的选择器替代
  • 带参数的混合器
    而有些时候,要适应灵活变化的不同属性值时,这个时候参数就是其发挥作用的时候了。
@mixin link-colors($normal, $visited, $hover) {
	color: $normal;
	&:visited {
		color: $visited;
	}
	&:hover {
		color: $hover;
	}
}

a {
	@include link-colors($normal: #666, $hover: red; $visited: #333); /* 参数名,可以直接省略,这样写是为了更醒目而已 */
}

/* 编译结果 */
a {color: #666;}
a:visited {color: #333;}
a:hover {color: red;}
  • 混合器 - 默认参数值
    @mixin link-colors ($normal: #666, $visited: $normal, $hover: red){ … }

和es6函数参数默认值效果一样

6. @extend 选择器继承

  1. 使用继承,会继承被选择器自身的样式
  2. 且还会继承与被选择器有关的复合选择器的所有样式,也就是任何地方有这个被选择器的都会被继承

本质: 就是相当于将与被选择器有关的样式规则拷贝一份,再将被选择器替换成要继承的选择器,并用并级选择器连接起来

.error {
	border: 1px solid red;
	background-color: #ddd;

	a {
		color: red;
		font-size: 12px;
	}
}

h1.error {
	font-weight: 700;
	font-size: 24px;
}

.seriousError{
	@extend .error;
	border-width: 3px;
}

/* 编译结果 */

.error, .seriousError {
	border: 1px solid red;
	background-color: #ddd;
}

.error a, .seriousError a {
	color: red;
	font-size: 12px;
}

h1.error, h1.seriousError {
	font-weight: 700;
	font-size: 24px;
}

基于CNN的三相故障识别算法及实现(Matlab) 通过预处理数据、构建CNN模型、训练与评估模型等步骤,我们可以准确快速地识别三相故障。现代电力系统中,三相故障是一种常见的故障情况,可以导致电网中断、设备损坏甚至火灾等严重后果。本文将介绍基于卷积神经网络(CNN)的三相故障识别算法,并提供Matlab源代码实现。首先,将原始信号分为训练集和测试集。然后,对输入信号进行归一化处理,确保数据在合适的范围内。CNN适用于处理二维数据,所以我们可以将输入信号看作是时间序列数据和特征(如电压、电流等)的二维矩阵。在开始之前,我们需要一个包含正常和故障样本的数据集。 阅读详情

相关推荐

保姆级教程:用NodeMediaClient在Android实现RTMP拉流播放(附避坑指南)

本文提供了一份详尽的Android平台RTMP拉流播放实现与深度调优指南。重点介绍了如何使用NodeMediaClient库进行集成,并针对视频卡顿、花屏等常见问题,从渲染引擎选择(SurfaceView与TextureView)、解码策略、缓冲区优化到高级网络自适应等方面提供了实战解决方案与避坑技巧。

weixin_29261711的博客 441

Sass学习笔记总结

Sass笔记总结 Sass快速入门

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

无耳科技 Solon v3.0.8 发布,Java 企业级应用开发框架

Solon 是新一代,Java 企业级应用开发框架。是杭州无耳科技有限公司的“根级”开源项目(最近“杭州六小龙”很火啊,我们也是杭州的哦)。从零开始构建(No Spring、No Java-EE、No Servlet),有灵活的接口规范与开放生态。采用对商用友好的 Apache 2.0 开源协议。

向往自由的少年!(我是一个少年!!!) 1700

Sass学习笔记

Sass 是 CSS 扩展语言,可以帮助我们减少 CSS 重复的代码,节省开发时间。Sass 文件后缀为 .scss。

yifan6688的博客 237

【NIFI】实现HANA->ORACLE数据同步

实现 HANA->ORACLE数据同步。

weixin_43159039的博客 1510

SUMO仿真教程(5) —— 使用“XML“语言自定义构建路网

文章目录一.简要介绍1.node file2.edge file3.lane definitions(1)路段细分(2)邻近的对向车道(3)删除边或车道4.type file(1)简要概述(2)edge定义中引用type文件的示例(3)指定车辆种类的速度限制5.connections file(1)简要概述:(2)connection的属性参数(3)删除连接(4)设置连接的优先级(5)同一边的多个连接二.演示示例:1.自定义编写node file2.自定义编写edge file3.自定义编写type fil

weixin_50632459的博客 5017

sass 学习笔记

—通过。

... 1387

告别手动点鼠标:用Python脚本批量跑ADS版图仿真,效率提升10倍(附完整代码)

本文详细介绍了如何利用Python脚本自动化ADS版图仿真流程,显著提升射频工程师的工作效率。通过调用ADS底层接口,实现参数化修改、批量任务调度和结果自动收集,解决了手动操作中的常见问题,如仿真不更新等。附完整代码,帮助开发者快速实现10倍效率提升。

weixin_42523543的博客 332

sass学习笔记(1.0)

意思就是如果你自己定义了一个局部变量BGcolor,就是你可以使用自己定义的样式,如果没有改局部变量,那么当你使用这个样式时,默认就是红色。【通俗的将,你自己有,就用你自己的,你若是没有,就用我的】sass的注释和普通css的注释也是不一样的,类似于js的注释,我们直接在vscode中使用快捷键ctrl+/就可以自定生成sass的注释。使用@import导入规则,它在生成css文件是就把相关文件导入进来,在导入sass时,不需要指定导入文件的全名,就是可以省略后缀。可以看到,对应5的样式已经设置上去了。

mez_Blog的博客 905

876-基于STM32的毫米波雷达智能睡眠监测系统

基于STM32的毫米波雷达智能睡眠监测系统通过非接触式毫米波雷达检测人体呼吸频率和体动次数,结合WIFI数据传输和OLED显示,实现睡眠质量分析与远程监控。系统核心功能包括生理参数采集、阈值设置、数据可视化及远程交互。

m0_50083169的博客 1545

Cadence PSpice 仿真6:反向放大器傅里叶仿真(FFT,谐波分析)实战图文教程

总谐波失真(THD)指音频信号源通过功率放大器时,由于非线性元件所引起的输出信号比输入信号多出的额外谐波成分。比如理想运放输出为5V 1Khz的正玄波时,实际输出的信号按照傅里叶展开后不但含有5V 1KHZ的分量,还有1V 2KHZ的分量,那么多出来的1V的分量就是二次谐波,二次谐波失真系数就是20%,由于任意1个波形按照傅里叶展开是可以展开到n次的,所以除了二次谐波外,输出的信号还有3,4,5……n次谐波,随着n的变大谐波的分量会变小,总谐波失真系数就是所有谐波分量和1次谐波(基波)的比值。Cadence

fydar的博客 4960

SASS 学习笔记

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

GoldenaArcher的博客 1612

HTML粉色爱心(完整代码)

HTML语言实现粉色爱心的完整代码。

AIGC 1118

SASS 学习笔记 II

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

GoldenaArcher的博客 1815

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

sass 学习笔记1

sass 学习的第一篇

Choiceanxiety的博客 1649

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Sass 学习笔记

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

紫一的博客 287

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

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的博客 443

【Sass学习笔记】001-Sass简介

文章目录一、Sass简介1 什么是 CSS 预处理器1.1 定义1.2 其它 CSS 预处理语言1.3 我们为什么选择 Sass1.4 示例代码2 什么是 Sass2.1 官网描述2.2 Sass 前世今生2.3 为什么早期不如 LESS 普及2.4 示例代码3 Sass 和 SCSS 有什么区别3.1 概述3.2 Sass 语法示例3.3 Scss 语法示例3.4 编译出来的 CSS3.5 代码演示4 Sass/SCSS 和纯 CSS 写法差很多吗4.1 Sass 和 CSS 写法有差别4.2 Sass

訾博(ZiBo)的博客 370

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

SASS学习笔记

Sass (Syntactically Awesome StyleSheets) Sass 是一款强化 CSS 的辅助工具,它在 CSS 语法的基础上增加了变量 (variables)、嵌套 (nested rules)、混合 (mixins)、导入 (inline imports) 等高级功能,这些拓展令 CSS 更加强大与优雅。使用 Sass 以及 Sass 的样式库(如 Compass)有助于更好地组织管理样式文件,以及更高效地开发项目。 特色功能(Features) 完全兼容 CSS3 在 CSS

cyikns的博客 2473
上一篇: css常用的命名规则与书写顺序
下一篇: css样式重置
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值