2011-11-11 13 views
0

ベンダー固有のプロパティをスタイルシートに自動的に追加する「トランスコーダー」の種類があるのだろうか? 「私はJavascript solution見つけたCSSトランスコーダ:ベンダー固有のプロパティをレンダリングする

div.rounded { 
    border-radius: 5px; 
    -mox-border-radius: 5px; 
    -webkit-border-radius: 5px; 
    opacity: 0.8; 
    filter:Alpha(Opacity=80); 
} 

、私はむしろしたい:私はこの出力トランスコーダを介して、ファイルを実行することができます

div.rounded { 
    border-radius: 5px; 
    opacity: 0.8; 
} 

:例えば私はこのようなスタイルシートを作成した場合JSに依存するのではなく、スタイルシートをあらかじめコンパイルしてください。

+0

別のスタイルシート(一般的なスタイルシート)でリンクすることができます。そして、あなたがそれらをページに置く順序によっては、どちらがもう一方を上書きするかが決定されます。 –

答えて

2

この種のツールには、Compass CSS Framework(http://compass-style.com)があります。 jQueryがJavaScriptにどのようなものをCSSに与えるかは、すべての詳細を記入して正規化することです。コンパス(とSASS)で

あなたはかなり楽に求めているものを行うことができます。

div.rounded { 
    @include border-radius; /* by default the radius is 5px */ 
} 

フレームワークがあまりにも思われる場合の出力は、その後

div.rounded { 
    -webkit-border-radius: 5px 5px; 
    -moz-border-radius: 5px/5px; 
    -o-border-radius: 5px/5px; 
    -ms-border-radius: 5px/5px; 
    -khtml-border-radius: 5px/5px; 
    border-radius: 5px/5px; 
} 

の線に沿って何かになりますあなたのニーズに重い手を加えれば、custom mixin with argumentsのようなより基本的なSASS解決策も考えられます:

@mixin my-border-radius($radius) { 
    -webkit-border-radius: $radius; 
    -moz-border-radius: $radius; 
    -o-border-radius: $radius; 
    -ms-border-radius: $radius; 
    -khtml-border-radius: $radius; 
    border-radius: $radius; 
} 

div.rounded { 
    @include my-border-radius(5px); 
} 
+0

こんにちは、私は過去にコンパスを見ましたが、それはかなりきちんとしていますが、私が望む以上には*遠い*です。私は必要な機能のためだけに使うことができると思うが、もっと軽いものを見つけることを望んでいた。 – mellowsoon

+0

@mellowsoonコンパスは、一度にフレームワークの一部だけを使用することを許可します。例えば、ボーダー半径機能のみを使用するには、 '@import" compass/css3/border-radius "'を使用します。もちろん、 'box-shadow'のような他の機能も必要になる可能性があります。これがあらかじめコンパイルされていることを考えると、リソースについての心配もありません。もちろん、魅力的であれば、裸のSASSミックスインを使用することもできます。 – Sampson

関連する問題