Less常用函数背一背

690 阅读5分钟

less函数

杂项函数

color

解析颜色,将代表颜色的字符串转换为颜色值.

参数: string: a string of the specified color.

返回值: color

实例: color("#aaa");

输出结果: #aaa

convert

将数字从一种单位转换到另一种单位。

第一个参数为带单位的数值,第二个参数为单位。如果两个参数的单位是兼容的,则数字的单位被转换。如果两个参数的单位不兼容,则原样返回第一个参数。

参见 unit 不做转换的情况下改变单位

兼容的单位是:

长度: m, cm, mm, in, pt and pc, 时间:s and ms, 角度: rad, deg, grad and turn. 参数:

number: a floating point number with units. identifier, string or escaped value: units 返回值: number

convert(9s, "ms")
convert(14cm, mm)
convert(8, mm) // incompatible unit types
9000ms
140mm
8

data-url

内联资源,并且如果启用了 ieCompat 选项并且资源太大,或者如果您在浏览器中使用该函数,则退回到 url()。如果未提供 MIME 类型,则节点将使用 mime 包来确定正确的 mime 类型。

参数:

  • mimetype: (Optional) A MIME type string.
  • url: The URL of the file to inline.

实例: data-uri('../data/image.jpg');

输出结果: url('data:image/jpeg;base64,bm90IGFjdHVhbGx5IGEganBlZyBmaWxlCg==');

浏览器上输出:url('../data/image.jpg');

实例: data-uri('image/jpeg;base64', '../data/image.jpg');

输出结果: url('data:image/jpeg;base64,bm90IGFjdHVhbGx5IGEganBlZyBmaWxlCg==');

default

默认函数仅在保护条件内可用时返回 true,并且与任何其他 mixin 不匹配,否则返回 false。 当默认函数在 mixin guard 条件之外使用时,它解释为常规 css。

.mixin(1) {
    x: 11;
}
.mixin(2) {
    y: 22;
}
.mixin(@x) when (default()) {
    z: @x;
}

div {
    .mixin(3); //3 不存在 返原值
}

div.special {
    .mixin(1); //11
}

输出

div {
    z: 3;
}
div.special {
    x: 11;
}

Less 列表函数

length

它将以逗号或空格分隔的值列表作为参数,并返回表示列表中元素数量的整数。

	@colors:'#111','#112';
	@val:length(@colors);

extract

它将返回列表中指定位置的值。

   @colors:'#111','#112';
   @val:extract(@colors,2); //1开头

less字符串函数

escape

它通过对特殊字符使用URL编码来对字符串或信息进行编码。 您无法编码一些字符,例如,, / ,? , @ ,& , + ,〜,! , $ ,'和您可以编码的一些字符,例如 \ ,#, > ^ ,(,), {,} ,: >,> ,,] , [和 = 。

 escape("Hello!! welcome to Tutorialspoint!")

输出

Hello%21%21%20welcome%20to%20Tutorialspoint%21

e

它是一个字符串函数,它使用string作为参数,并返回不带引号的信息。 它是一个CSS转义,它使用〜“一些内容"转义的值和数字作为参数。 === ~('value')

   filter: e("Hello!! welcome to Tutorialspoint!");

输出

  filter: Hello!! welcome to Tutorialspoint!;

% format

此函数格式化一个字符串。 它可以写成以下格式:

%(stringarguments ...)

第一个参数是带有占位符的字符串。 所有占位符均以百分比符号%开头,后跟字母s,S,d,D,a或A。

其余参数包含用于替换占位符的表达式。如果您需要打印百分比符号,请再加上一个百分比%%。 如果需要将特殊字符转义为utf-8转义码,请使用大写占位符。该函数转义除()'〜!之外的所有特殊字符。空格编码为%20。小写的占位符保留原样的特殊字符。

占位符:

  • d,D,a,A-可以用任何类型的参数(颜色,数字,转义值,表达式等)代替。如果将它们与字符串结合使用,则将使用整个字符串-包括其引号。但是,引号按原样放置在字符串中,不能用“ /”或类似符号进行转义。
  • s,S-可以用任何表达式代替。如果将它与字符串一起使用,则仅使用字符串值-省略引号。 参数: 字符串:带占位符的格式字符串, 任何*:替换占位符的值。 返回:格式化的字符串。 eg:
format-a-d: %("myvalues: %a myfile: %d", 2 + 3, "mydir/less_demo.less");

输出

  format-a-d: "myvalues: 5 myfile: "mydir/less_demo.less"";

replace

它用于替换字符串中的文本。 它使用一些参数:

  • string :它搜索字符串并替换。

  • pattern :它搜索正则表达式模式。

  • replacement :它替换与模式匹配的字符串。

  • flags :这些是可选的正则表达式标志。

  replace("Hello, Mars?", "Mars\?", "Earth!");
  replace("One + one = 4", "one", "2", "gi");
  replace('This is a string.', "(string)\.$", "new $1.");
  replace(~"bar-1", '1', '2');

输出

  "Hello, Earth!";
  "2 + 2 = 4";
  'This is a new string.';
  bar-2;

数学函数

percentage

将浮点数转换为百分比字符串。

Parameters: number - a floating point number.

Returns: string

Example: percentage(0.5)

Output: 50%

percentage

将浮点数转换为百分比字符串。

Parameters: number - a floating point number.

Returns: string

Example: percentage(0.5)

Output: 50%

ceil

向上舍入到下一个最大整数。

Parameters: number - a floating point number.

Returns: integer

Example: ceil(2.4)

Output: 3

floor

向下舍入到下一个最小整数。

Parameters: number - a floating point number.

Returns: integer

Example: floor(2.6)

Output: 2

还有其他的数学函数就不介绍了。看下api不常用

类型函数

nameeg
isnumberisnumber(56px); // true; isnumber(#ff0); // false
isstringisstring(#ff0); // false;isstring("string"); // true
iscolor
iskeyword
isurl
ispixelispixel(56px); // true
isemisem(56px); // false;isem(7.8em); // true
ispercentageispercentage(7.8%); // true
isunit (如果值是以指定单位为数字,则返回true,否则返回false。)isunit(11px, px); // true
isruleset (如果值是规则集,则返回true,否则返回false。)

颜色定义函数

LESS中的颜色定义函数使定义和操作颜色变得超级简单,使用颜色函数可以帮助你控制颜色、更好地配色。

LESS提供了许多有用的颜色函数,以不同的方式改变和操作颜色。 LESS支持一些颜色定义功能,如下表所示:

  1. rgb

它创建从红色,绿色和蓝色值的颜色。 它有以下参数: 红色:包含介于0 - 255之间的整数或介于0 - 100%之间的百分比。 绿色:它包含介于0 - 255之间的整数或介于0 - 100%之间的百分比。 蓝色:包含介于0 - 255之间的整数或介于0 - 100%之间的百分比。

rgb(220,20,60)====>#dc143c

  1. rgba

alpha :它包含0到1之间的数字或0到100%之间的百分比。

rgba(220,20,60,0.5) ===> rgba(220,20,60,0.5)

  1. argb

它以#AARRGGBB格式定义颜色的十六进制表示。它使用以下参数:color :它指定颜色对象。

argb(rgba(176,23,31,0.5))===> #80b0171f

  1. hsl

它根据色相,饱和度和亮度值生成颜色。它具有以下参数:

  • hue :它包含介于0 - 360之间的整数,表示度数。
  • 饱和度:它包含介于0 - 1之间的数字或介于0 - 100%之间的百分比。
  • 亮度:它包含介于0 - 1之间的数字或介于0 - 100%之间的百分比。

hsl(120,100%,50%)===> #00ff00

  1. hsla

alpha :它包含0到1之间的数字或0到100%之间的百分比。

hsla(0,100%,50%,0.5)===> rgba(255,0,0,0.5);

  1. hsv

它根据色相,饱和度和值产生颜色。它包含以下参数: hue :它包含介于0 - 360之间的整数,表示度数。

饱和度:它包含介于0 - 1之间的数字或介于0 - 100%之间的百分比。

value :它包含介于0 - 1之间的数字或介于0 - 100%之间的百分比。

hsv(80,90%,70%) 它将具有hsv值的颜色对象转换为:
#7db312

  1. hsva

It produces the color from hue, saturation, value and alpha values. It uses following parameters:

  • hue :它包含介于0 - 360之间的整数,表示度数。

  • 饱和度:它包含介于0 - 1之间的数字或介于0 - 100%之间的百分比。

  • value :它包含介于0 - 1之间的数字或介于0 - 100%之间的百分比。

  • alpha :它包含0到1之间的数字或0到100%之间的百分比。

hsva(80,90%,70%,0.6) 它指定具有hsva值的颜色对象为:
rgba(125,179,18,0.6)

api