美文网首页
SASS入坑之基本特性(一)

SASS入坑之基本特性(一)

作者: 豆豆猫1031 | 来源:发表于2017-11-22 16:10 被阅读0次

Preprocessing预处理

CSS on its own can be fun, but stylesheets are getting larger, more complex, and harder to maintain. This is where a preprocessor can help. Sass lets you use features that don't exist in CSS yet like variables, nesting, mixins, inheritance and other nifty goodies that make writing CSS fun again.

Once you start tinkering with Sass, it will take your preprocessed Sass file and save it as a normal CSS file that you can use in your web site.

The most direct way to make this happen is in your terminal. Once Sass is installed, you can runsass input.scss output.cssfrom your terminal. You can watch either individual files or entire directories. In addition, you can watch folders or directories with the--watchflag. An example of running Sass while watching an entire directory is the following:

    sass --watch app/sass:public/stylesheets

SASS致力于解决CSS越来越复杂,越来越大,难以维护的痛点

特性:variables, nesting, mixins,partials, inheritance

1.Variables抽象变量

$font-stack: Helvetica,sans-serif;

$primary-color: #333;

body{

    font:100% $font-stack;

    color: $primary-color;

}

2.Nesting嵌套

nav{

    ul{

        margin:0;

        padding:0;

        list-style:none;

    }

    li{

        display:inline-block;

    }

    a{

        display:block;

        padding:6px12px;

        text-decoration:none;

    }

}

3. Partials/ Import 局部化与整体化

// _reset.scss

html,

body,

ul,

ol{

    margin:0;

    padding:0;

// base.scss

@import'reset';

body{

    font:100% Helvetica, sans-serif;

    background-color:#efefef;

}

4.Mixins 宏/模板

@mixin border-radius($radius){

    -webkit-border-radius:$radius;

    -moz-border-radius:$radius;

    -ms-border-radius:$radius;

    border-radius:$radius;

}

.box{ @include border-radius(10px); }

5.Extend/Inheritance 扩展/继承(直接把一个内容当模板复用)

.message{

    border:1px solid #ccc;

    padding:10px;

    color:#333;

}

.success{

    @extend .message;

    border-color:green;

   }

.error{

    @extend .message;

    border-color:red;

}

.warning{

    @extend.message;

    border-color:yellow;

}

相关文章

网友评论

      本文标题:SASS入坑之基本特性(一)

      本文链接:https://www.haomeiwen.com/subject/mefovxtx.html