端午节第一天

将之前做的一个小demo的css样式改为了scss

好吧 改完了 赶紧由小兵 升级到中尉了

什么是scss?

我的理解是scss 就是css 的预处理器,使css变得更加富有逻辑。

有什么好处?

比如再项目过程中 字体都是red 现在 我想把所有字体 无论大小都换成 green

  1. 你要改每个样式里面的字体颜色(臣妾做不到)

  2. 当然你也可以用模块化的css 将它分出一个class.然后满屏都是font-normal-color font-big-color font-size-14 font-size-13 这样的东西

好吧 有了scss 你可以更好的解决刚刚我所遇到的这种问题

你只需要改变量

<p class="nav">Hello SCSS!</p>
<div class="footer">Hello World!</div> .nav{
color: $font-normal-color;
} .footer {
color: $font-normal-color;
border: 1px solid $font-normal-color;
} 然后只需要改动
$font-normal-color: red;

如何安装?

如果是window系统

需要安装ruby 因为scss是基于ruby开发的

可以参考 http://www.w3cplus.com/sassguide/install.html

如果是Mac

不要要安装 自带

安装完ruby

输入

gem install sass

(记得翻墙)

可以查看scss的版本

sass -v

说明安装成功

开始如何使用

变量

    $blue : #1875e7; 
  
$side : left;
  
.rounded {
border-#{$side}:5px solid $blue;
}

计算


div {
padding: $var * 10%;
margin: (12px/2);
height: 20px + 30px;
}

嵌套

a{
&:hover {
color: red;
}
}

继承

.class1{
font-size: 14px;
color: red;
} .class2 {
@extend .class1;
height:20px;
}

Mixin

@mixin size($value: 20px) {
height:$value;
width: $value;
} .div1 {
background: red;
@include size(30px); //长宽都是30px
} .div2 {
background: green;
@include size;//长宽都是0px
}

颜色函数

这里方法比较多,自己对颜色的换算也不是很懂 可以参考

http://www.w3cplus.com/preprocessor/sass-color-function.html

插入文件

@import '文件路径'

高级函数

if语句


div {
@if 1+1 ==2 {
border : 1px solid;
}
}

循环语句

 @for $i from 1 to 10 {
    .border-#{$i} {
      border: #{$i}px solid blue;
    }
  }
@for $i from 1 to 5 {
.border-#{$i} {
border: #{$i}px solid solid blue;
}
}

自定义函数

.nav{
width: double(5px);
}

编译

sass test.scss test.css

// watch a file
  sass --watch input.scss:output.css
  // watch a directory
  sass --watch app/sass:public/stylesheets

开启你们SASS之旅吧!!!!

scss使用后的简单入门总结的更多相关文章

  1. 用IntelliJ IDEA创建Gradle项目简单入门

    Gradle和Maven一样,是Java用得最多的构建工具之一,在Maven之前,解决jar包引用的问题真是令人抓狂,有了Maven后日子就好过起来了,而现在又有了Gradle,Maven有的功能它都 ...

  2. [原创]MYSQL的简单入门

    MYSQL简单入门: 查询库名称:show databases; information_schema mysql test 2:创建库 create database 库名 DEFAULT CHAR ...

  3. Okio 1.9简单入门

    Okio 1.9简单入门 Okio库是由square公司开发的,补充了java.io和java.nio的不足,更加方便,快速的访问.存储和处理你的数据.而OkHttp的底层也使用该库作为支持. 该库极 ...

  4. emacs最简单入门,只要10分钟

    macs最简单入门,只要10分钟  windwiny @2013    无聊的时候又看到鼓吹emacs的文章,以前也有几次想尝试,结果都是玩不到10分钟就退出删除了. 这次硬着头皮,打开几篇文章都看完 ...

  5. 【java开发系列】—— spring简单入门示例

    1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控制反转 ...

  6. 程序员,一起玩转GitHub版本控制,超简单入门教程 干货2

    本GitHub教程旨在能够帮助大家快速入门学习使用GitHub,进行版本控制.帮助大家摆脱命令行工具,简单快速的使用GitHub. 做全栈攻城狮-写代码也要读书,爱全栈,更爱生活. 更多原创教程请关注 ...

  7. Web---演示Servlet的相关类、表单多参数接收、文件上传简单入门

    说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代 ...

  8. Asp.Net EF Code First 简单入门

    今天在上班期间花了点时间学习了一下微软的EntityFramework Code First技术,这篇文章只是简单的入门,不多废话,下面直入主题. 一.首先添加一个解决方案,接着添加一个web网站,D ...

  9. HTML5简单入门系列(五)

    前言 本篇将讲述HTML5的服务器发送事件(server-sent event) Server-Sent 事件 Server-Sent 事件是单向消息传递,指的是网页自动获取来自服务器的更新. 以前的 ...

随机推荐

  1. poj 2187 Beauty Contest(二维凸包旋转卡壳)

    D - Beauty Contest Time Limit:3000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u ...

  2. sql 取一张表的全部外键

    select a.name as 约束名, object_name(b.parent_object_id) as 外键表, d.name as 外键列, object_name(b.reference ...

  3. 使用QML创建界面(转)

    原文转自 https://blog.csdn.net/rl529014/article/details/51378307 在Qt编程中,我们可以使用纯C++代码,或C++和XML结合的方式来创建GUI ...

  4. COMPANY_点取消会卡死的解决方法

    // OLD void ctonedlg::onbtn_basedir_clicked() {     m_basedir = getUserSelectDir();     doSearchDir( ...

  5. malloc,calloc,realloc区别

    malloc:memory allocation calloc:The 'c' indicates 'cleared' realloc:The realloc() function changes t ...

  6. 快速幂取模(当数很大时,相乘long long也会超出的解决办法)

    当几个数连续乘最后取模时,可以将每个数字先取模,最后再取模,即%对于*具有结合律.但是如果当用来取模的数本身就很大,采取上述方法就不行了.这个时候可以借鉴快速幂取模的方法,来达到大数相乘取模的效果. ...

  7. 线段树【SP1043】GSS1 - Can you answer these queries I

    Description 给出了序列\(A_1,A_2,-,A_n\). \(a_i \leq 15007,1 \leq n \leq 50000\).查询定义如下: 查询\((x,y)=max{a_i ...

  8. 【强连通分量】tarjan算法及kosaraju算法+例题

    阅读前请确保自己知道强连通分量是什么,本文不做赘述. Tarjan算法 一.算法简介 Tarjan算法是一种由Robert Tarjan提出的求有向图强连通分量的时间复杂度为O(n)的算法. 首先我们 ...

  9. JDBC_PreparedStatement 防sql注入

    package songyan.jdbc.login.prepared; import java.sql.Connection; import java.sql.DriverManager; impo ...

  10. Handler嵌套--可以

    package com.example.handlernestdemo; import android.support.v7.app.ActionBarActivity; import android ...