CSS革命:用Sass/SCSS引领前端创新

这篇具有很好参考价值的文章主要介绍了CSS革命:用Sass/SCSS引领前端创新。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

在现代的前端开发中,CSS已成为呈现网页和应用程序样式的核心。然而,原生的CSS语法在大型项目中可能变得混乱、冗长且难以维护。
为了解决这些问题,SCSS(Sass CSS)和Sass(Syntactically Awesome Style Sheets)应运而生。
本文将带你简单了解sass和scss。

sass中文网
scss中文网

SCSS

SCSS(Sass CSS)是一种CSS预处理器,它扩展了普通的CSS语法,提供了更强大、更灵活的功能。
SCSS使用类似于CSS的语法,并引入了变量、嵌套、混合、继承等概念,使得CSS代码更易于编写和维护。

  1. 变量(Variables):您可以使用变量来存储颜色、字体、间距等重复使用的值,并在需要的地方引用它们。这样可以简化代码,方便统一修改。

    $primary-color: #007bff;
    
    .button {
      background-color: $primary-color;
    }
    
  2. 嵌套选择器(Nested Selectors):可以在SCSS中嵌套选择器,以减少代码量,改善可读性。

    .container {
      width: 100%;
      
      .title {
        font-size: 24px;
      }
    }
    
  3. 混合(Mixins):混合是一段可重用的代码块,可以像函数一样在需要的地方引用。它可以包含任意数量的属性和样式。

    @mixin flexbox {
    	display: flex;
    	justify-content: center;
    	align-items: center;
    }
    			
    .container {
    	@include flexbox;
    }
    
  4. 继承(Extend):可以通过继承样式来减少重复的CSS代码。

    .button {
      border: 1px solid #ccc;
      padding: 10px;
    }
    
    .primary-button {
      @extend .button;
      background-color: #007bff;
      color: #fff;
    }
    
  5. 导入其他文件(Import):可以将SCSS代码拆分到多个文件中,并使用@import指令将它们导入到主文件中。

    // main.scss
    @import "variables";
    @import "buttons";
    
  6. @content 是 Sass/SCSS 中的特殊指令,用于在自定义的混入(Mixin)中传递代码块。通过使用 @content,可以将一个或多个代码块传递给混入,并在混入中使用这些代码块。

    @mixin media-query($size) {
      @media (max-width: $size) {
        @content;
      }
    }
    
    .container {
      width: 100%;
    
      @include media-query(768px) {
        background-color: #f5f5f5;
      }
    }
    

    编译后的 CSS 代码如下所示:

    .container {
      width: 100%;
    }
    
    @media (max-width: 768px) {
      .container {
        background-color: #f5f5f5;
      }
    }
    

    应用: 创建适应不同屏幕尺寸或其他条件的样式。

以上只是SCSS的一小部分功能和用法。SCSS还提供了更多的功能,如条件语句、循环、函数等,以及灵活的配置选项,更多内容见scss中文网。


Sass

Sass(Syntactically Awesome Style Sheets)是一种CSS预处理器,它扩展了普通的CSS语法,并提供了更多的功能和特性。
Sass与SCSS非常相似,实际上,SCSS是Sass的一种语法扩展,可以说是更加兼容和易于学习的版本。

以下是一些Sass的特性和用法:

  1. 变量(Variables):在Sass中,使用变量来存储重复的值,例如颜色、字体大小、间距等,并在需要的地方引用它们。

    $primary-color: #007bff
    
    .button
      background-color: $primary-color
    
  2. 嵌套选择器(Nested Selectors):在Sass中嵌套选择器,以减少代码量和改善可读性。

    .container
      width: 100%
    
      .title
        font-size: 24px
    
  3. 混入(Mixins):混入是一段可重用的代码块,在需要的地方引用它们。与SCSS类似,混入可以包含任意数量的属性和样式。

    @mixin flexbox
      display: flex
      justify-content: center
      align-items: center
    
    .container
      @include flexbox
    
  4. 继承(Extend):Sass允许通过继承样式来减少重复的CSS代码。

    .button
      border: 1px solid #ccc
      padding: 10px
    
    .primary-button
      @extend .button
      background-color: #007bff
      color: #fff
    
  5. 导入其他文件(Import):您可以将Sass代码拆分到多个文件中,并使用@import指令将它们导入到主文件中。

    // main.sass
    @import variables
    @import buttons
    

Sass 和 SCSS 的区别

  • Sass:

    • 使用缩进来表示层级关系,没有大括号和分号。
    • 通过空行、缩进和冒号来表示属性和值的关系。
    • 嵌套选择器使用父级选择器后跟子级选择器的方式,可以减少代码量。
    • 没有必要写单位,如可以直接写 margin: 10,Sass 会自动添加单位。
    • 变量定义符号为 $,例如 $primary-color: #007bff
    • 混入使用 @mixin 声明,通过 @include 引用。
    • 文件后缀名为 .sass
    // main.sass
    
    $primary-color: #007bff
    
    .container
      width: 100%
    
      .title
        font-size: 24px
    
    .button
      background-color: $primary-color
    
  • SCSS:

    • 使用花括号和分号来表示层级关系和语句结束。
    • 属性和值之间使用冒号来进行分隔。
    • 嵌套选择器使用普通的 CSS 语法,以大括号表示。
    • 需要明确写明单位,如 margin: 10px
    • 变量定义符号为 $,例如 $primary-color: #007bff
    • 混入使用 @mixin 声明,通过 @include 引用。
    • 文件后缀名为 .scss
    // main.scss
    
    $primary-color: #007bff;
    
    .container {
      width: 100%;
    
      .title {
        font-size: 24px;
      }
    }
    
    .button {
      background-color: $primary-color;
    }
    
  • 无论是Sass还是SCSS,最终都会被编译为普通的CSS代码文章来源地址https://www.toymoban.com/news/detail-637153.html

    /* main.css */
    
    .container {
      width: 100%;
    }
    
    .container .title {
      font-size: 24px;
    }
    
    .button {
      background-color: #007bff;
    }
    

到了这里,关于CSS革命:用Sass/SCSS引领前端创新的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • sass和scss 有何区别?

    Sass(Syntactically Awesome Style Sheets)和 SCSS(Sassy CSS)都是用于编写样式表的CSS预处理器,它们有很多相似之处,但也有一些重要的区别: 1、语法差异: Sass 使用缩进来表示代码块,类似于Python。它使用缩进和换行符来区分不同的代码块。 SCSS 使用更类似于传统CSS的语法,使用花

    2024年02月09日
    浏览(24)
  • Frontend - SASS / SCSS 文件使用

    目录 一、安装所需依赖 1. django-compressor  2. django-sass-processor 二、settings.py 文件配置 三、html使用 1. 配置 2. 导入 1. django-compressor  2. django-sass-processor 安装依赖,可参考另一篇文章:Backend - 安装依赖(pip 、tar.gz)_python通过tar.gz包安装依赖包-CSDN博客 1. 配置 2. 导入

    2024年01月24日
    浏览(31)
  • Less、Sass/Scss是什么?他们有什么区别?

    是一种动态样式语言. 对CSS赋予了动态语言的特性,如变量、继承、运算、函数。 Less 既可以在客户端上运行 (支持IE 6+, Webkit, Firefox),也可在服务端运行。 是一种动态样式语言,Sass语法属于缩排语法, 比css比多出好些功能(如变量、嵌套、运算,混入(Mixin)、继承、颜色处理,

    2023年04月22日
    浏览(54)
  • Vue项目自动注入less、sass、scss、stylus全局变量

    一、Vue2项目 官方文档:CSS 相关 | Vue CLI 二、Vue3项目 2024-4-9

    2024年04月15日
    浏览(46)
  • uni-app 之 安装uView,安装scss/sass编译

    uni-app 之 安装uView,安装scss/sass编译 image.png image.png image.png 点击HBuilder X 顶部,工具,插件安装,安装新插件 image.png image.png 安装成功! 注意,一定要先登录才可以安装 image.png 1. 引入uView主JS库 在项目根目录中的 main.js 中,引入并使用uView的JS库,注意这两行要放在 import Vu

    2024年02月10日
    浏览(35)
  • SCSS 学习笔记 和 vscode下载live sass compiler插件配置

    SCSS 是一个 CSS 的预处理器,是 CSS 的扩展语言,可以帮助我们减少重复的代码,生成更好的 CSS 格式化代码,并且兼容所有版本的 CSS SCSS 是 对于 CSS3 的 SASS ,所以我们学的时候,把文件后缀写为 “.scss” 由于我们的配置,当遇到兼容性代码,出口文件会自动配置,如下图

    2024年02月12日
    浏览(25)
  • 前端-CSS预处理器Sass

    CSS预处理器Sass sass简介 使用vscode开发sass sass语法 scss语法 sass变量 sass嵌套 sass混合器 sass继承 sass操作符 sass函数 sass导入 sass作用域 sass条件语句 scss媒体查询和响应式设计 第三方的Sass函数和混合器库 Sass编译器 Sass模块

    2024年01月22日
    浏览(38)
  • 将scss文件转换成css文件

    大家平时做项目肯定都习惯了使用scss或者less去写样式,如果是使用工程化的项目我们可以借助插件很方便的将scss或者less转换成css。那如果我们没有使用工程化,比如简单的demo或者官网等项目又希望可以通过scss去编写文件应该怎么办呢,我们可以借助sass插件去帮我们转换生

    2024年02月06日
    浏览(24)
  • css之文字连续光影特效、动画、scss

    2024年02月10日
    浏览(25)
  • css/less/scss代码注意事项

    一.命名 1.类名使用小写字母,以中划线分割;id 使用 驼峰式命名; 2.less/scss中的函数、混合采用驼峰命名; 3. class 的命名不要使用 标签名,如 .p .div .img ; 二.选择器 尽量使用直接子选择器,否则,有时会造成性能损耗 .content .title { ... } (不推荐)(后代选择器) .content .title {

    2024年02月04日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包