初心者のjquery:.css()
プロパティがHTML内に含まれている場合、関数は要素のcssプロパティを変更しますか、それとも外部スタイルシート(存在する場合)から要素を見つけて変更しますか?
例えば
$('#main').css('background-color', '#eee');
<style>
HTML内にインラインタグがないので、関数#main
はリンクされた外部スタイルシートでクラスを検索しますか?
初心者のjquery:.css()
プロパティがHTML内に含まれている場合、関数は要素のcssプロパティを変更しますか、それとも外部スタイルシート(存在する場合)から要素を見つけて変更しますか?
例えば
$('#main').css('background-color', '#eee');
<style>
HTML内にインラインタグがないので、関数#main
はリンクされた外部スタイルシートでクラスを検索しますか?
JavaScriptは、とにかくスタイルシート自体を変更するのではなく、計算されたDOM要素を操作しています。私の知る限り、jQuery関数はCSSを要素自体に設定するのと同等のレベルに配置します。
<div id="main" style="background-color: #eee;"></div>
これはCSS内の最高レベルのターゲティングであり、その要素をターゲティングする他のすべてのもの(外部スタイルシートなど)をオーバーライドします。
そのコードは、要素のインライン スタイル プロパティを変更します。cssファイルにはまったく触れません。
セレクターは、id = main
および setを持つ要素を探しますstyle.backgroundColor = '#eee'
。
.css() をセッターとして使用すると、jQuery は要素のスタイル プロパティを変更します。たとえば、$('#mydiv').css('color', 'green') は、document.getElementById('mydiv').style.color = 'green' と同等です。
要素のスタイル属性を設定し、外部スタイル シートには触れません。
jQuery はクライアント側で動作するため、サーバー側で外部リンク スタイルシートを変更または変更することはできません。まず、セレクターに従って要素を選択し、次に css スタイルをインラインに配置します。これらのインライン スタイルは、Firefox で Firebug を使用して確認できます。通常.css()
、css スタイルの実行時の変更に使用します。実行時にリンクされた css スタイルシートからスタイルを適用する場合は、クラスを作成して適用できます。addClass().