1

だから私はこのビットを持っています Less

#footer {
    ul {
        // stuff
    }
    li {
        // stuff
    }
}

すべてが #footer 内に適切に含まれていますが、#footer の前に付けたいとします。.ie6 や .ie7 のようなクラスでフッターのプレフィックスを付けるにはどうすればよいですか?

たとえば、これを実行したい (疑似構文 >.ie6、>.ie7 を観察):

#footer {
    <.ie6, <.ie7 {
        // ie6/7 stuff
    }
    ul {
        // stuff
    }
    li {
        // stuff
    }
}

これを生成します:

.ie6 #footer,
.ie7 #footer {}

#footer {}
#footer ul {}
#footer li {}

Lessでこれを達成する方法はありますか?

4

2 に答える 2

2

これはあなたにとって興味深いかもしれないと思います: https://github.com/cloudhead/less.js/pull/268#issuecomment-1207479

あなたがやりたいことは、マスターのless.jsではまだできません。しかし、ジェームズ・フォスターという男がそれをフォークして、この機能を追加しました。

例:

#box {
    #other-box {
        margin: 10px 0 0;

        .ie7 & {
            margin: 5px 0 0;
        }
    }
}
于 2011-05-24T13:24:28.017 に答える
2

の代わりに#footerすべてをラップしない限り、クラスを の前に配置することはできないと思います.ie6/7#footer

LESS Web サイトには、次の例が示されています。

#header        { color: black;
  .navigation  { font-size: 12px }
  .logo        { width: 300px;
    &:hover    { text-decoration: none }
  }
}

これが、あなたが望むものと同様のことを達成する唯一の方法だと思います。

    #footer {
    .ie6{
        // ie6 stuff
    }
    .ie7{
       //ie7 stuff
    }
    ul {
        // stuff
    }
    li {
        // stuff
    }
    }

ID の後にクラスを生成します。.ie6/7

于 2011-05-15T19:10:13.123 に答える