diff --git a/lib/less/tree/mixin.js b/lib/less/tree/mixin.js index 7add616..6e8b221 100644 --- a/lib/less/tree/mixin.js +++ b/lib/less/tree/mixin.js @@ -45,7 +45,13 @@ tree.mixin.Definition.prototype = { context = { frames: [this, frame].concat(env.frames) }; return new(tree.Ruleset)(null, this.rules.map(function (rule) { - return new(tree.Rule)(rule.name, rule.value.eval(context)); + if (rule.rules) { + return new(tree.Ruleset)(rule.selectors, rule.rules.map(function (r) { + return new(tree.Rule)(r.name, r.value.eval(context)); + })); + } else { + return new(tree.Rule)(rule.name, rule.value.eval(context)); + } })); } }; diff --git a/test/css/mixins-args.css b/test/css/mixins-args.css index a33ce21..a3a95be 100644 --- a/test/css/mixins-args.css +++ b/test/css/mixins-args.css @@ -33,3 +33,9 @@ body { .scope-mix { width: 8; } +.content { + width: 600px; +} +.content .column { + margin: 600px; +} diff --git a/test/less/mixins-args.less b/test/less/mixins-args.less index 8c2fcb6..e0078ad 100644 --- a/test/less/mixins-args.less +++ b/test/less/mixins-args.less @@ -62,3 +62,11 @@ body { .scope-mix { .global-mixin(3); } + +.nested-ruleset (@width: 200px) { + width: @width; + .column { margin: @width; } +} +.content { + .nested-ruleset(600px); +}