在 Less 中写 IE 的css hack

Less中直接在属性后面加hack写法会编译报错的。那么怎么解决呢?

第一种方式:

IE7 以display:inline-block为例:

 less的hack写法:

.box{
    display: inline-block;
    *display:inline;
    *zoom: 1;
}

编译出来的结果也是

.box{
    display: inline-block;
    *display:inline;
    *zoom: 1;
}

 注意:这里只能用 * 号,用 号写hack会报错,因为 号在less中不支持编码。在String Functions 里面说清楚的:

如果一定要用到加号或其他直接写却不支持的hack字符的话,可以参考第三种方式

 

第二种方式:

less的写法:

@hack:~"\9";   //IE7,8的hack写法
.box{
    width: 100px@hack;
}

编译之后:

.box {
  width: 100px \9;
}

~ 符号的作用是避免编译,记住后面要加引号

 

第三种方式:

less写法:

@hack:~"+"; 
.box{
    @{hack}display: inline;
}

 编译之后:

.box {
  +display: inline;
}

 注意记得加上{ }括号

 

posted @ 2018-05-25 15:01  站住,别跑  阅读(637)  评论(0编辑  收藏  举报