Less字符串函数和长度相关函数(10)

字符串函数

escape()函数

作用:
将输入字符串中的uri特殊字符进行编码处理
不转义编码:, / ? @ & + ' ~ ! $
转义编码:# ^ ( ) { } | : > < ; [ ] =

例子:
Less中编写

div{
    
    
	d:escape('123=abc');
}

编译结果

div{
    
    
	d:123%3Dabc;
}

e()函数

作用:Css转义,用~“值”符合代替。(作用其实就是原样输入内容,避免编译)
常见在calc属性中,避免less提前编译了结果

例子
Less中编写

div{
    
    
	filter:e("ms:alwaysHasItsOwnSyntax.For.Stuff()");
	filter:~"ms:alwaysHasItsOwnSyntax.For.Stuff()";
	width:calc(960px-100px);
	width:calc(~'960px-100px');
}

编译结果

div{
    
    
	filter:ms:alwaysHasItsOwnSyntax.For.Stuff();
	filter:ms:alwaysHasItsOwnSyntax.For.Stuff();
	width:calc(860px);
	width:calc(960px-100px);
}

%()函数

作用:函数%(string,arguments ...)格式化一个字符串

补充知识:
less中占位符分为:a、A、d、D、s、S
a、A、d、D能被任何类型参数替换(颜色值、数字、转义值、表达式…),如果是在字符串中结合使用,整个字符串都会替换进去,包括它的引号,然后,引号会被替换到字符串参数的原来位置,可能被转义或者没有被转义,这取决于占位符是大写字母还是小写字母

s、S能被除了颜色值以外的任何类型的参数替换,如果在字符串中结合使用,只会替换成字符串参数的值,而字符串参数引号被忽略

例子:
Less中编写

/* a */
font-family:%("%a %a","Microsoft","YaHei");

/* A */
font-family:%("%A %a","Microsoft","YaHei");

/* d */
font-family:%("%d %d","Microsoft","YaHei");

/* D */
font-family:%("%D %d","Microsoft","YaHei");

/* s */
font-family:%("%s %s",red,"YaHei");

/* S */
font-family:%("%S %s",#FF6600,"YaHei");

编译结果

/* a */
font-family:""Microsoft" "YaHei"";

/* A */
font-family:"%22Microsoft%22 "YaHei"";

/* d */
font-family:""Microsoft" "YaHei"";

/* D */
font-family:"%22Microsoft%22 "YaHei"";

/* s */
font-family:"undefined YaHei";

/* S */
font-family:"undefined YaHei";

replace()函数

作用:用另一个字符串替换文本

例子
Less中编写

div{
    
    
	content:replace("Hello,maizi","maizi","LESS");
}

编译结果

div{
    
    
	content:"Hello,LESS";
}

长度相关函数

length()函数

作用:返回集合中的值的条数
例子
Less中编写

div{
    
    
	content:length(1px solid #0080ff);
}

编译结果

div{
    
    
	content:3;
}

extract()函数

作用:返回集合中指定索引的值
例子
Less中编写

div{
    
    
	@list: "banana","tomato","potato","peach";
	content:extract(@list,1);
}

编译结果

div{
    
    
	content:"banana";
}

猜你喜欢

转载自blog.csdn.net/weixin_44679078/article/details/111823927