pixsy/node_modules/less/test/less-bom/scope.less

104 lines
1.7 KiB
Plaintext

@x: red;
@x: blue;
@z: transparent;
@mix: none;
.mixin {
@mix: #989;
}
@mix: blue;
.tiny-scope {
color: @mix; // #989
.mixin;
}
.scope1 {
@y: orange;
@z: black;
color: @x; // blue
border-color: @z; // black
.hidden {
@x: #131313;
}
.scope2 {
@y: red;
color: @x; // blue
.scope3 {
@local: white;
color: @y; // red
border-color: @z; // black
background-color: @local; // white
}
}
}
#namespace {
.scoped_mixin() {
@local-will-be-made-global: green;
.scope {
scoped-val: @local-will-be-made-global;
}
}
}
#namespace > .scoped_mixin();
.setHeight(@h) { @height: 1024px; }
.useHeightInMixinCall(@h) { .useHeightInMixinCall { mixin-height: @h; } }
@mainHeight: 50%;
.setHeight(@mainHeight);
.heightIsSet { height: @height; }
.useHeightInMixinCall(@height);
.importRuleset() {
.imported {
exists: true;
}
}
.importRuleset();
.testImported {
.imported;
}
@parameterDefault: 'top level';
@anotherVariable: 'top level';
//mixin uses top-level variables
.mixinNoParam(@parameter: @parameterDefault) when (@parameter = 'top level') {
default: @parameter;
scope: @anotherVariable;
sub-scope-only: @subScopeOnly;
}
#allAreUsedHere {
//redefine top-level variables in different scope
@parameterDefault: 'inside';
@anotherVariable: 'inside';
@subScopeOnly: 'inside';
//use the mixin
.mixinNoParam();
}
#parentSelectorScope {
@col: white;
& {
@col: black;
}
prop: @col;
& {
@col: black;
}
}
.test-empty-mixin() {
}
#parentSelectorScopeMixins {
& {
.test-empty-mixin() {
should: never seee 1;
}
}
.test-empty-mixin();
& {
.test-empty-mixin() {
should: never seee 2;
}
}
}