2

我有一个 LESS 样式表styles.less,其中包含一些我需要在我的ie7.css样式表中访问的变量,这些变量是使用条件注释加载的。

鉴于这些是完全独立的样式表,并且我必须转换ie7.cssie7.less,我是否可以使这些 CSS 变量在两个样式表中可用?

即我希望能够执行以下操作:

# styles.less, always loaded
@labelwidth: 150px;

# ie7.less, sometimes loaded
label{ margin-left: @labelwidth; }
4

1 回答 1

7

这样做的最好方法是只使用两种不同的样式表:一种用于所有人,另一种用于 ie,其中包括所有人的样式表。因此,在 HTML 中,使用智能条件注释它看起来像:

<!--[if gt IE 7]><!-->
    <link rel="stylesheet" href="styles.less" />
<!--<![endif]--><!--[if lt IE 8]>
    <link rel=stylesheet href="ie.less">
<![endif]-->

您可以在其中ie.less导入styles.less

@import url(styles.less);

/* Your styles for IE */

因此,您可以获得两个好处:

  1. styles.less您从in 中获取所有变量ie.less
  2. 你在 IE 上只收到一个请求(它只加载一个样式表)。
于 2011-08-24T15:34:18.790 回答