LESS编译器将RGBA()转换为十六进制

时间:2014-06-30 23:26:04

标签: css less rgba

我正在使用SimpLESS编译器创建一个LESS样式表,我注意到当我使用CSS rbga()函数创建一个条目时,如下所示:

@contentDefaultOpacity: 0.5;

header#main-header {
    nav.navbar {
        div.container-fluid {
            div.collapse {
                ul.nav {
                    li {
                        a {
                            @alpha: 255 * @contentDefaultOpacity;

                            color: rgba(255, 255, 255, @alpha);
                        }
                    }
                }
            }
        }
    }
}

编译器抛弃rgba()并输出:

header#main-header nav.navbar div.container-fluid div.collapse ul.nav li a {
    color: #ffffff;
}

有没有办法保留rgba()

感谢您的时间。

2 个答案:

答案 0 :(得分:4)

rgba()功能少于0%100%之间的百分比 您正在通过128,这是完全不透明的。

答案 1 :(得分:2)

如果您希望生成 CSS rgba() 函数(而不是Less生成的静态十六进制颜色代码),可以使用带插值变量的字符串和{{{ 1}}运算符删除引号。这个更少的代码:

~

将生成CSS:

@contentDefaultOpacity: 0.5;

a {
    @alpha: @contentDefaultOpacity;
    color: ~'rgba(255, 255, 255, @{alpha})';
}