Less 关于css hack的写法

时间:2024-01-05 20:16:14

由于工作需要,最近一直在弄css转写less,遇到最多的问题就是 hack的写法,一些IE的hack,less不支持编译;

常见的不支持的hack如下:

  1. IE的滤镜写法
  2. \9\0    IE8部分支持、IE9支持
  3. \9 所有IE浏览器都支持
  4. \0 IE8、IE9支持,opera部分支持

后三种情况 常出现 单一存在是不影响编译;但是混合使用时常常发生编译错误

解决办法如下:

  1. 以shadow滤镜为例

    filter: ~" progid: DXImageTransform . Microsoft . Shadow(Strength = 1, Direction = 135, color = #FFFFFF)";                                          编译后:

    filter: progid: DXImageTransform . Microsoft . Shadow(Strength = 1, Direction = 135, color = #FFFFFF)\0;

  2. 2-4 总结为

    @ie-hack: ~"\9\0";
    div{

      height:10px@ie-fix;

    }

在改写less过程中暂时遇到这些问题。