5

在我正在处理的应用程序的 CSS 中,我需要包含一些专门针对 IE8 的样式。样式代码写在几个 LESS 文件中,然后使用 CodeKit 或 Mac OS X 上的 LESS 应用程序编译成一个 CSS 文件,我们用于实时应用程序。

这是我想在我的 LESS 文件中使用的 CSS 代码:

@media \0screen {
  .thumbnail div img {
     width: 58px;
   }
}

但是,LESS 不接受\0screen作为有效代码,并且在尝试使用此代码编译我们的 LESS 文件时,CodeKit 和 LESS 应用程序都会返回错误。

我知道我们可以为 IE8 使用条件注释和替代 CSS 文件,但是由于此时所需的修复只需要几行,我非常喜欢使用@media查询并将编译后的 CSS 保存到一个文件中。

LESS 网站上,有一章关于使用 转义代码~"",但它似乎只适用于值。

如果我将其直接放入已编译的 CSS 文件中,则其中的查询和 CSS 代码非常适合 IE8,但显然我不想每次编译后都附加已编译的 CSS。

是否有另一种方法可以在 LESS 中转义此查询?

4

1 回答 1

7

根据作为评论发布的提示grimmus,我设法通过创建一个 LESS 变量然后在@media查询中使用该变量来解决这个问题。

我把它放在我的变量中:

@ie8: \0screen;

然后在查询中:

@media @ie8 {
  .thumbnail div img {
    width: 58px;
  }
}

奇迹般有效!向格林姆斯提出建议。

于 2013-10-15T09:10:49.203 回答