zoukankan      html  css  js  c++  java
  • Sass Maps的函数-map-values($map)、map-merge($map1,$map2)

    map-values($map)

    map-values($map) 函数类似于 map-keys($map) 功能,不同的是 map-values($map )获取的是 $map 的所有 value 值,可以说也将是一个列表。而且,map-values($map) 中如果有相同的 value 也将会全部获取出来。

    如前面的示例,使用:

    map-values($social-colors)

    将会返回:

    #ea4c89,#3b5998,#171515,#db4437,#55acee

    值与值之前同样用逗号分隔。

    map-merge($map1,$map2)

    map-merge($map1,$map2)

    map-merge($map1,$map2) 函数是将 $map1 和 $map2 合并,然后得到一个新的 $map。如果你要快速将新的值插入到 $map 中的话,这种方法是最佳方法。假设我们有两个 $map:

    $color: (
        text: #f36,
        link: #f63,
        border: #ddd,
        backround: #fff
    );
    $typo:(
        font-size: 12px,
        line-height: 1.6
    );

    如果希望将这两个 $map 合并成一个 map,我们只要这样做:

    $newmap: map-merge($color,$typo);

    将会生成一个新的 map:

    $newmap:(
        text: #f36,
        link: #f63,
        border: #ddd,
        background: #fff,
        font-size: 12px,
        line-height: 1.6
    );

    这样你就可以借助 map-get( ) 等函数做其他事情了。

    不过有一点需要注意,如果 $map1 和 $map2 中有相同的 $key 名,那么将 $map2 中的 $key 会取代 $map1 中的:

    $color: (
        text: #f36,
        link: #f63,
        border: #ddd,
        backround: #fff
    );
    $typo:(
        font-size: 12px,
        line-height: 1.6,
        border: #ccc,
        background: #000
    );

    执行:

    $newmap: map-merge($color,$typo);

    得到的新 map:

    header {
      @each $key, $value in $newmap {
        #{$key}:#{$value}
      }
    }
    $newmap:(
        text: #f36,
        link: #f63,
        font-size: 12px,
        line-height: 1.6,
        border: #ccc,
        background: #000
    );
  • 相关阅读:
    编译安装httpd
    ANSIBLE安装和常用模块模块使用详细教程
    MySQL集群高可用
    MySQL数据库备份和恢复
    MySQL数据库多表查询
    MySQL语句使用。
    MySQL多实例安装教程
    二进制安装MySQL数据库
    半自动化系统安装
    c语言分别用库函数和系统函数来进行文件操作效率对比
  • 原文地址:https://www.cnblogs.com/qjuly/p/9122014.html
Copyright © 2011-2022 走看看