less - 可以使用 LESS 来访问所选元素的现有属性的值吗?

标签 less stylesheet mixins css

我在 LESS 部分中定义了一个类:

.myclass
{
    border-radius: [CALCULATION: e.g. this.height + 2px];
}

我想根据元素的高度计算边界半径(如上面语法错误的示例所示)。

我尝试过的

我有一个解决办法:

.myclass(@height)
{
    border-radius: @height + 2px;
}

上面的问题是 myclass 可能是一个内部有内容可管理区域的 div(所以 div 很可能会增长到任意高度),所以我不一定能通过高度作为 mixin 的参数。

注意:我也试过百分比,但边框半径看起来是歪斜的。

我不想为此使用任何 javascript。

最佳答案

如果不使用 javascript,这是不可能的,因为您的 less 将被预编译成标准的 css。

如果您乐于使用 javascript 和 less.js,您可以使用 less.modifyVars() ( link to docs )。

关于less - 可以使用 LESS 来访问所选元素的现有属性的值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23632763/

相关文章:

html - 使用 SASS mixin 时 CSS 编译错误

visual-studio - Less:评估函数 data-uri 时出错:找不到模块 './types.json'

css - 无法在 chrome 中编辑 CSS STYLE 属性(变灰和屏蔽)

css - 如何在 FXML 中添加 CSS 样式表

mixins - 使用 foreach 循环——无法读取变量

sass - 在 Sass mixin 中跳过可选参数

css - 少CSS : Maximum call stack size with loop in loop

css - 将 LESS Mixin 转换为 Stylus Mixin

loops - 在 Less 中循环变量名数组

javascript - 将样式表链接到 ID