小白Sass教程---通过实例学Sass--第五讲--scss文件导入及Sass样式优先级测试

本文主要是介绍小白Sass教程---通过实例学Sass--第五讲--scss文件导入及Sass样式优先级测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、sass提供导入机制,可以将页面的共用较为通用的scss提取出来,这样方便维护,其他页面按需导入相关的scss文件,避免了所有的样式都在一个样式文件中,一个样式文件较为繁重难以维护。

 

@import "../sass/lesson4";

这样就导入了lesson4这个scss文件,可以使用其中的样式。

 

二、测试一下样式应用的优先级

1、本文件下:嵌套结构、非嵌套结构

在本页面内的<style></style>标签内直接写样式,测试一下嵌套结构和非嵌套结构会应用哪个样式

.lesson4{.test1{color: #f527e7;}
}
.test1{color: #1e18f5;
}

这里我们都定义了一个test1的样式,结果页面应用的是嵌套结构中的,改变.test1的位置还是一样的。

① 稍微改一下,将非嵌套的优先级置高

.lesson4{.test1{color: #f527e7;}
}
.test1{color: #1e18f5 !important;
}

 

②在标签上直接写样式

 

测试下来,结论是 :

在本页面内写样式

直接定义在标签上的样式+!important 

>  嵌套结构的样式+!important 

非嵌套结构 + !improtant

直接定义在标签上的样式

嵌套结构的样式

>  非嵌套结构的样式

经过测试,嵌套在内部的样式比散落在外面的样式优先级要高,问题来了,如果同是嵌套,那么会应用哪一个嵌套的样式呢?

.lesson4{.test1{color: #f527e7 !important;}.test2{color: #f527e7 !important;}
}
.test1{color: #1e18f5 !important;
}
.lesson4-inside{.test2{color: #1e18f5 !important;}
}

 

我们嵌套定义了test2的样式 ,一个粉色,一个蓝色

 

页面显示的是蓝色

挪一下代码的位置

页面变成了粉色

测试下来,结论是 :

同是嵌套结构,以最后的定义为准,后定义的会覆盖前面的定义

(可以自己试一下去掉!important,都有或者都没有important后面的会覆盖前面的,如果前面的有important,后面的没有,那后面的就覆盖不了前面的了)

加入导入的文件也有定义重复的样式,那就要看导入的位置了,如果在最后倒入就会应用导入的样式,如果最开始就导入,就会被覆盖。

三、!default

sass提供默认值

四、嵌套导入

详情看实例demo

这篇关于小白Sass教程---通过实例学Sass--第五讲--scss文件导入及Sass样式优先级测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1129222

相关文章

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

SpringBoot返回文件让前端下载的几种方式

《SpringBoot返回文件让前端下载的几种方式》文章介绍了开发中文件下载的两种常见解决方案,并详细描述了通过后端进行下载的原理和步骤,包括一次性读取到内存和分块写入响应输出流两种方法,此外,还提供... 目录01 背景02 一次性读取到内存,通过响应输出流输出到前端02 将文件流通过循环写入到响应输出流

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

SpringBoot+Vue3整合SSE实现实时消息推送功能

《SpringBoot+Vue3整合SSE实现实时消息推送功能》在日常开发中,我们经常需要实现实时消息推送的功能,这篇文章将基于SpringBoot和Vue3来简单实现一个入门级的例子,下面小编就和大... 目录前言先大概介绍下SSE后端实现(SpringBoot)前端实现(vue3)1. 数据类型定义2.

Spring IOC核心原理详解与运用实战教程

《SpringIOC核心原理详解与运用实战教程》本文详细解析了SpringIOC容器的核心原理,包括BeanFactory体系、依赖注入机制、循环依赖解决和三级缓存机制,同时,介绍了SpringBo... 目录1. Spring IOC核心原理深度解析1.1 BeanFactory体系与内部结构1.1.1

SpringBoot集成iText快速生成PDF教程

《SpringBoot集成iText快速生成PDF教程》本文介绍了如何在SpringBoot项目中集成iText9.4.0生成PDF文档,包括新特性的介绍、环境准备、Service层实现、Contro... 目录SpringBoot集成iText 9.4.0生成PDF一、iText 9新特性与架构变革二、环

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A

使用Python实现在PDF中添加、导入、复制、移动与删除页面

《使用Python实现在PDF中添加、导入、复制、移动与删除页面》在日常办公和自动化任务中,我们经常需要对PDF文件进行页面级的编辑,使用Python,你可以轻松实现这些操作,而无需依赖AdobeAc... 目录1. 向 PDF 添加空白页2. 从另一个 PDF 导入页面3. 删除 PDF 中的页面4. 在

CPython与PyPy解释器架构的性能测试结果对比

《CPython与PyPy解释器架构的性能测试结果对比》Python解释器的选择对应用程序性能有着决定性影响,CPython以其稳定性和丰富的生态系统著称;而PyPy作为基于JIT(即时编译)技术的替... 目录引言python解释器架构概述CPython架构解析PyPy架构解析架构对比可视化性能基准测试测