Less守護命名空間

當保護被施加到命名空間,在命名空間中定義混合類型只用於保護條件返回 true 時。命名空間防護類似防護混合類型。

示例

下面的例子演示了 Less 文件中使用守護命名空間:

Guarded Namespaces

Welcome to Yiibai Yiibai

This will paragraph be displayed *red*, when *(@color = blue)* in *style.less* and when color is other than *blue*, then this paragraph will be default *black*.

接下來,創建文件 style.less。

style.less

@import "http://www.yiibai.com/less/lib.less";
#namespace when (@color = blue) {
.mixin() {
color: red;
}
}
p{
#namespace .mixin();
}

這將在從下面代碼的路徑 http://www.yiibai.com/less/lib.less 導入所述lib.less文件到 style.less :

lib.less

@color: blue;

你可以編譯 style.less 使用下面的命令來生成 style.css 文件:

lessc style.less style.css

接着執行上面的命令,它會自動創建 style.css 文件,下面的代碼:

style.css

p {
color: red;
}

輸出結果

讓我們來執行以下步驟,看看上面的代碼工作:

  • 保存上面的HTML代碼在 less_mixin_guarded_namespaces.html 文件。

  • 在瀏覽器中打開該HTML文件,得到如下輸出顯示。

Less守護命名空間