阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      Less 将规则集传递给Mixins

      描述

      分离的规则集包含一个普通的规则集,如属性,嵌套规则集,变量声明,mixins等。它存储在一个变量中,并包含到其他结构中,其中规则集的所有属性都将被复制到该结构。

      例子

      以下示例将规则集传递到LESS文件中的mixin:

      passing_ruleset.htm

      <!doctype html>
      <head>
      	<link rel="stylesheet" href="style.css" type="text/css" />
      </head>
      <body>
      <div class="cont">
         <h2>Welcome to AXIHE.com</h2>
         <p>The largest Tutorials Library on the web.</p>
      </div>
      </body>
      </html>
      

      接下来,创建文件 style.less

      style.less

      @detached-ruleset: {
          .mixin() {
              font-family: "Comic Sans MS";
              background-color: #AA86EE;
          }
      };
      
      .cont {
          @detached-ruleset();
          .mixin();
      }
      

      您可以使用以下命令将 style.less 文件编译为 style.css :

      lessc style.less style.css
      

      接下来执行上面的命令,它将用下面的代码自动创建 style.css 文件:

      style.css

      .cont {
        font-family: "Comic Sans MS";
        background-color: #AA86EE;
      }
      

      输出

      让我们执行以下步骤,看看上面的代码如何工作:

      • 将上述html代码保存在 passing_ruleset.htm 文件中。
      • 在浏览器中打开此HTML文件,将显示输出。

      范围

      分离的规则集中的所有变量和混合宏在被调用或定义的地方都可用,否则调用者和定义范围都可用。 当两个范围包含相同的mixin或variable时,声明范围获取优先级。 分离的规则集体在声明范围中定义。 在将分离的规则集从一个变量复制到另一个变量后,它不会更改其范围。

      下表列出了所有类型的范围:

      S.N.类型及描述
      1定义和调用范围可见性
      变量和mixin在分离的规则集中定义。
      2引用将不会修改分离的规则集范围
      仅仅给出引用,规则集不访问任何新的范围。
      3解锁将修改分离的规则集范围
      分离的规则集可以通过导入到范围中来访问。
      目录
      目录