SCSS 迷你书 (下) - SCSS 中 @指令

简介: SCSS的@import是css的加强版本,共有以下几种方式可以互相导入引用;注意点 - 可以使用相对路径 - 导入的文件可以.scss后缀名 - 可以引入线上的scss文件 - 支持括入引入的写法 - 在同一个目录不能同时存在带下划线和不带下划线的同名文件。 例如,_navbar.scss 不能与 navbar.scss 并存。 - 支持引入带下划线和不带下划线的文件;比如(navbar和_navbar) - 若是文件命名**带下划线**则不编译该文件,但却可以正常把样式导入其他文件用(如index.scss引入_navbar,只产生index.css) - 若是文件命名*不带下划线**,


原文链接: blog.csdn.net


@import指令


SCSS的@import是css的加强版本,共有以下几种方式可以互相导入引用;

注意点 - 可以使用相对路径 - 导入的文件可以.scss后缀名 - 可以引入线上的scss文件 - 支持括入引入的写法 - 在同一个目录不能同时存在带下划线和不带下划线的同名文件。 例如,_navbar.scss 不能与 navbar.scss 并存。 - 支持引入带下划线和不带下划线的文件;比如(navbar和_navbar) - 若是文件命名**带下划线**则不编译该文件,但却可以正常把样式导入其他文件用(如index.scss引入_navbar,只产生index.css) - 若是文件命名*不带下划线**,两者皆会编译,产生CSS文件((如index.scss引入navbar,会产生index.cssnavbar.css`)) - 支持在CSS 规则 和 @media 规引入样式


@import "navbar.scss";                 
@import "footer" ;
@import "http://test.xx/sidebarbar";
@import url(foo);
@import "navbar","sidebar","header","footer";   
.test{
        @import "widget";
}


sass 中的 @media 指令和 CSS 的使用规则一样的简单,但它有另外一个功能,可以嵌套在 CSS 规则中。有点类似 JS 的冒泡功能一样,如果在样式中使用 @media 指令,它将冒泡到外面


.sidebar {
  width: 300px;
  @media screen and (max-width: 1920px) {
    width: 600px;
  }
}


@extend指令


Sass 中的 @extend 是用来扩展选择器或占位符。


.btn{
  height:2rem;
  line-height:2rem;
  text-align:center;
  width:5rem;  
}
%btna{
  height:5rem;
  line-height:5rem;
  text-align:center;
  width:5rem;  
}
.btn-block{
  @extend .btn;
  display:block;
  width:100%;
}
.btn-square{
  @extend %btna;
}


@at-root指令


@at-root 从字面上解释就是跳出根元素。当你选择器嵌套多层之后,想让某个选择器跳出,此时就可以使用 @at-root。


.layer1 {
  color: red;
  .layer2 {
    color: orange;
    @at-root .layer3 {
    }
  }  
}


@debug


@debug 在 Sass 中是用来调试的,当你的在 Sass 的源码中使用了 @debug 指令之后

在命令终端会输出你设置的提示 Bug: @debug 10em + 12em; 会输出: Line 1 DEBUG: 22em


@warn@error


这两个也是方便调试用的,显示警告信息和错误信息…..类似JS的console.log();

目录
相关文章
|
8月前
|
JavaScript 前端开发
VUE指令: v-cloak指令是用来解决什么问题的?
VUE指令: v-cloak指令是用来解决什么问题的?
222 0
|
3月前
|
前端开发 开发者
CSS预处理器Less、Scss
【10月更文挑战第3天】
134 59
|
3月前
|
存储 前端开发 开发者
深入了解 Sass 和 SCSS:CSS 预处理器的强大功能
Sass(Syntactically Awesome Stylesheets)是一个强大的 CSS 预处理器,为开发者提供了诸多高级特性,如变量、嵌套、混合、继承等,简化了 CSS 的编写和管理。SCSS 是 Sass 3 引入的新语法,完全兼容 CSS3,并增强了 Sass 的动态功能。本文详细介绍了 Sass 和 SCSS 的核心特性及其在实际开发中的应用,如变量定义、嵌套规则、混合、继承、以及常用的操作符与扩展功能。
67 0
|
5月前
|
前端开发 安全 JavaScript
scss 学习
scss 学习
60 0
|
8月前
|
XML 前端开发 数据格式
探索CSS预处理器:Sass、Less与Stylus
探索CSS预处理器:Sass、Less与Stylus
|
8月前
|
前端开发
【专栏:CSS进阶篇】CSS变量与预处理器(Sass/Less)
【4月更文挑战第30天】本文探讨了CSS变量和预处理器Sass的使用,以提升开发效率和代码可维护性。CSS变量通过--*语法定义,可在文档范围内重用,减少冗余,提高可维护性。Sass预处理器引入了变量、嵌套规则、混合和函数等特性,使CSS编写更简洁、可维护。Sass变量使用$符号定义,支持嵌套规则和混合,如定义border-radius混合以减少重复代码。Sass的高级功能使其成为强大工具。
158 0
|
8月前
|
JavaScript 前端开发
Vue中的v-cloak指令的作用是什么?
Vue中的v-cloak指令的作用是什么?
81 1
|
8月前
|
JavaScript 前端开发
Vue中的 v-cloak 指令
Vue中的 v-cloak 指令
|
8月前
|
前端开发 JavaScript 容器
【Vue2.0学习】—v-cloak指令(四十七)
【Vue2.0学习】—v-cloak指令(四十七)
sass/scss 变量与嵌套规则
sass/scss 变量与嵌套规则
90 0