让一个颜色变量在sheet.less
.
颜色是十六进制格式#f57e20
。
我想使用该颜色,但要为其添加一个 Alpha 通道。
我想结束rgba(245, 126, 32, 0.5)
Bootstrap或更少有什么关系吗?
让一个颜色变量在sheet.less
.
颜色是十六进制格式#f57e20
。
我想使用该颜色,但要为其添加一个 Alpha 通道。
我想结束rgba(245, 126, 32, 0.5)
Bootstrap或更少有什么关系吗?
您可以使用Bootstrap中的一些内置函数less.js
和mixins :
这是一个less.js
函数:
// using a variable
@color: #f57e20;
.test {
background: fade(@color, 50%); // return @color with 50% transparency
}
// or without the color variable
.test2 {
background: fade(#f57e20, 50%); // return @color with 50% transparency
}
这两者都会导致:
.test {
background: rgba(245, 126, 32, 0.5);
}
.test2 {
background: rgba(245, 126, 32, 0.5);
}
或者使用Bootstrap混合:
.test3 {
#translucent > .background(#f57e20, 0.5); // use HSLA mixin
}
结果是:
.test3 {
background-color: rgba(244, 123, 31, 0.5);
}
我将在translucent
此处包含 mixins 的(固定)代码以用于存档目的,因为(上次我检查过)它不再包含在Bootstrap 3.0.0中:
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
#translucent {
.background(@color: @white, @alpha: 1) {
background-color: fade(@color, @alpha);
}
.border(@color: @white, @alpha: 1) {
border-color: fade(@color, @alpha);
.background-clip(padding-box);
}
}
您可能想尝试:
background: rgba(red(@color), green(@color), blue(@color), @alpha);
在编写使用 box-shadow 的快速 mixin 时,我不得不做类似的事情。