让前端飞Sass

Sass 基础用法(上)

2019-01-03  本文已影响7人  写代码的海怪

嵌套

.nav {
    border: 1px solid grey;
    
    > ul { => 嵌套
        border: 1px solid green;
        > li {
            border: 1px solid red;
        }
    }
}

变量

$grey: grey; => 变量
$red: red;
$green: green;

.nav {
    border: 1px solid $grey;
    
    > ul {
        border: 1px solid $green;
        > li {
            border: 1px solid $red;
        }
    }
}

Mixin(类似于函数)

两处地方用相同代码时可以用Mixin讲法,相当于机械地拷贝CSS代码到不同地方。

@mixin debug($border-color: red) { => 默认传入的值是red
    border: 1px solid red;
}

.nav {
    @include debug(grey); => 引用debug(xxx)
    > ul {
        @include debug(red);
        > li {
            @include debug(green);
        }
    }
}

Placeholder(类似于类class)

两处地方用相同代码时,用Mixin时只是copy相同代码。用Placeholder 方法可以省略更多的代码 -> 将CSS代码只写一遍,而将选择器提到CSS代码前面。

%box {
    margin: 20px;
    box-shadow: 0 0 3px black;
    border-radius: 4px;
}

.nav {
    >ul {
        border: 1px solid red;
        >li {
            @extend %box;
        }
    }
}

.demo {
    @extend %box;
    height: 100px;
}
上一篇下一篇

猜你喜欢

热点阅读