2011-12-17 14 views
0

divで関数によって作成された幅と高さを動的に変更したいと考えています。以下のコードは動作しますが、スタイルルールはHTMLドキュメントに直接追加されます。これは避けたいものです。その代わりに、プロパティをCSSファイルに直接追加する必要があります。それを達成する方法はありますか?あなたはjQueryのまたはJavaScriptを使用してCSSファイルに直接書き込むことはできませんCSSルールでCSSルールを直接変更する

...function(width, height) { 

var div = $('<div/>', { 
    class': 'window', 
    width': width, 
    height': height 
}).appendTo('#content'); 

} 

答えて

1

なぜjqueryを使用してCSSファイルにクラスを追加する必要がありますか?これを直接行うことはできません。 <style>....</style>タグは、HTMLページの<head>タグにjQueryを追加することで追加できます。

$.rule('#content{ width: 100%; height: 90% }').appendTo('style'); 

var myStyle = { "width": "100%", "height": "90%" }; 
$('#content').css(myStyle); 

OR

$("<style type='text/css'>#content { width: 100%; height: 90% }</style>").appendTo("head"); 

OR

しかし、あなたが使用 $.ruleため pluginを使用する必要が覚えている:あなたは、この問題を解決するには、次の方法を使用することができます。

+0

はい、これはうまくいくはずですが、HTMLページをCSSからきれいにしたい、ということです。頭の中でさえも。 – holyredbeard

+0

@Arifあなたはあなたの答えで '$ .rule'がjqueryコアでサポートされていないと言わなければなりません、プラグインを含める必要があります。 – Rafay

+0

@ 3nigmaありがとうございます。これで修正されました。 –

4

(あなたが上記のやっているように)、あなたはライブ/レンダリングされたHTMLに追加することができます。

CSSにクラスを追加してjQueryを使用してDIVにそのクラスを切り替えたり追加したりするのはなぜですか?

関連する問題