1

状況によっては、.less ファイルに「#」ハッシュタグが使用されていると、常にノードレス コンパイラ エラーが発生します。color: #FFFFFF; のような色の 16 進値で問題ないようです。しかし、あなたは #zoom: 1; のようなものを取ります。認識されない入力に対して parseError で爆発します。

# の使用に直接関連する他の投稿を見つけることができず、コンパイラがつまずくので、なぜ誰もこの問題に遭遇していないのか不思議に思います。

以下は、Dojo SDK ファイル dijit.css から取得したクラスのファイル定義を除いた実際の例です。拡張子を .less に変更したので、それと他の少ないファイルを 1 つの .css ファイルにまとめることができました。

.dijitInline {
/*  To inline block elements.
    Similar to InlineBox below, but this has fewer side-effects in Moz.
    Also, apparently works on a DIV as well as a FIELDSET.
*/
display:inline-block;           /* webkit and FF3 */
#zoom: 1; /* set hasLayout:true to mimic inline-block */
#display:inline; /* don't use .dj_ie since that increases the priority */
border:0;
padding:0;
vertical-align:middle;
#vertical-align: auto;  /* makes TextBox,Button line up w/native counterparts on IE6 */
}

コンパイラは、#zoom および #display 行でチョークします。

4

1 に答える 1

1

技術的に言え#zoomば無効な css ですが、IE によって解釈されるため、IE の修正ソリューションとしてよく使用されます。ただし、これがコンパイラが失敗する理由だと思います。

コードキットと winless で正常にコンパイルされる、次のインライン ブロック mixin を使用します。

.display-inline-block() {
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    *display: inline;
}

あなた*displayと同じくらい無効#zoomですが、私のコンパイラは気にしないようです。で試したことはありません#が、代わりに を使用する*と一見の価値があるようです...

于 2013-08-29T22:05:32.627 に答える