0

これがまったく不可能であることは確かですが...

私がこのミックスインを持っているとしましょう:

.horizontalList() {
    background:blue;
        & li {
            display:inline-block;
        }
}

生成されるcssは次のとおりです。

.something{
    background:blue;
}

.something li{
    display:inline-block;
}

同様のミックスインを使用して次のCSSを生成することは可能ですか?

.something{
    background:blue;
}

.something li{
    display:inline-block;
}

.ie6 .something li,
.ie7 .something li
{
    display:inline;
}

...つまり、ie6とie7のものはセレクターの前にあり、PaulIrishの条件付きコメントのアイデアを利用できます。

古いIEの処理を行うためにcssハックを追加できることは知っていますが、スタイルシートにこれらを含めたくないのです。

ありがとう!!!

4

1 に答える 1

1

mixinでそれを行う必要があります:

以下

.horizontalList() {
    background:blue;
        & li {
            display:inline-block;
        }
        .ie6 & li,
        .ie7 & li {
            display: inline;
        }
}

あれを呼べ

.something {
  .horizontalList;
}

CSS出力

.something {
  background: blue;
}
.something li {
  display: inline-block;
}
.ie6 .something li,
.ie7 .something li {
  display: inline;
}
于 2013-02-20T12:13:41.080 に答える