美文网首页
Sass和Less

Sass和Less

作者: 蓝醇 | 来源:发表于2019-04-09 23:37 被阅读0次

    嵌套Sass和Less一样 反映层级和约束

    body{
        padding:0;
        margin:0;
    }
    
    .wrapper{
        background:white;
    
        .nav{
            font-size: 12px;
        }
        .content{
            font-size: 14px;
            &:hover{
                background:red; 
            }
        }
    }
    

    变量和计算 減少重复代码
    Less

    
    @fontSize: 12px;
    @bgColor: red;
    
    body{
        padding:0;
        margin:0;
    }
    
    .wrapper{
        background:lighten(@bgColor, 40%);
    
        .nav{
            font-size: @fontSize;
        }
        .content{
            font-size: @fontSize + 2px;
            &:hover{
                background:@bgColor;
            }
        }
    }
    

    Sass

    
    $fontSize: 12px;
    $bgColor: red;
    
    body{
        padding:0;
        margin:0;
    }
    
    .wrapper{
        background:lighten($bgColor, 40%);
    
        .nav{
            font-size: $fontSize;
        }
        .content{
            font-size: $fontSize + 2px;
            &:hover{
                background:red;
            }
        }
    }
    
    

    Extend 和 Mixin 代码片段
    Less

    .block(@fontSize){
        font-size: @fontSize;
        border: 1px solid #ccc;
        border-radius: 4px;
    }
    
    .wrapper{
        background:lighten(@bgColor, 40%);
    
        .nav{
            .block(@fontSize);
        }
        .content{
            .block(@fontSize + 2px);
            &:hover{
                background:red;
            }
        }
    }
    
    .wrapper{
        background:lighten(@bgColor, 40%);
    
        .nav:extend(.block){
            color: #333;
        }
        .content{
            &:extend(.block);
            &:hover{
                background:red;
            }
        }
    }
    

    Sass

    @mixin block($fontSize){
        font-size: $fontSize;
        border: 1px solid #ccc;
        border-radius: 4px;
    }
    
    body{
        padding:0;
        margin:0;
    }
    
    .wrapper{
        background:lighten($bgColor, 40%);
    
        .nav{
            @include block($fontSize);
        }
        .content{
            @include block($fontSize + 2px);
            &:hover{
                background:red;
            }
        }
    }
    
    .block{
        font-size: $fontSize;
        border: 1px solid #ccc;
        border-radius: 4px;
    }
    
    .wrapper{
        background:lighten($bgColor, 40%);
    
        .nav{
            @extend .block;
            color: #333;
        }
        .content{
            @extend .block;
            &:hover{
                background:red;
            }
        }
    }
    

    循环 适用于复杂有规律的样式
    Less

    .gen-col(@n) when (@n > 0){
        .gen-col(@n - 1);
        .col-@{n}{
            width: 1000px/12*@n;
        }
    }
    
    .gen-col(12);
    

    Sass

    @for $i from 1 through 12 {
        .col-#{$i} {
            width: 1000px/12*$i;
        }
    }
    
    

    import Sass和Less一样 CSS 文件模块化

    @import "./xxx-module1";
    @import "./xxx-module2";
    

    相关文章

      网友评论

          本文标题:Sass和Less

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