首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >较少的css混合,参数A作为参数B的默认值

较少的css混合,参数A作为参数B的默认值
EN

Stack Overflow用户
提问于 2012-05-04 23:16:55
回答 1查看 485关注 0票数 0

我目前正在使用LESS CSS,并试图创建一个mixin来模仿速记参数的默认css行为。

在css中,您通常会声明,即

代码语言:javascript
复制
margin: 5px 5px 10px;

它被解读为

代码语言:javascript
复制
margin: 5px 5px 10px 5px;

我尝试了相同的边界-半径混合

代码语言:javascript
复制
.border-radius (@topright: 5px, @bottomright: @topright, @bottomleft: @topright, @topleft:  @bottomright) {}

如果只用一个参数调用,我希望它将第一个参数作为所有参数的默认值。如果我用2个参数调用它,它应该将第一个参数作为第三个参数的默认值,将第二个参数作为第四个参数的默认值。

有没有一种方法可以用LESS来实现这种行为呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-04 23:51:12

正确的方法是只接收一个参数

代码语言:javascript
复制
.border-radius(@px) {
    -webkit-border-radius: @px;
    -moz-border-radius: @px;
    border-radius: @px;
}

然后你可以用一个参数来调用它:

代码语言:javascript
复制
.border-radius(5px);

或者和很多人一起。这要求您要么将它们放入变量中,要么对它们进行转义:

代码语言:javascript
复制
@myradius: 5px 5px 10px;
.border-radius(@myradius);

代码语言:javascript
复制
.border-radius(~"5px 5px 10px");

readBootstrap project使用后一个版本是为了简洁。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10451617

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档