CSSスタイルシート及び優先度法則

3353 ワード


CSS:Cascading Style Sheets、スタイルシートを積層し、ページレイアウトと外観を変更します.HTMLは文書の内容を定義し、
コンポーネント:セレクタ、1つ以上の宣言.
選択:
スタイルを変更するHTML要素が必要です.
宣言:各宣言は、属性と値で構成されます.【宣言グループは{}で囲み、セミコロンで終わる】
p {color:red;text-align:center;}

コメント:/*これはコメントです*/
idセレクタ:特定のid属性が付いたHTML要素のスタイルを指定し、
IDプロパティ:数値で始まることはできません.IDプロパティはHTMLドキュメントごとに1回しか表示されません.
#para1   /*id = "para1"   */
{
text-align:center;
color:red;
}

classクラスセレクタ:複数の要素で使用できる要素のセットのスタイルを説明します.CSSで「.」に表示されます.
p.center {text-align:center;}  /*    p      class="center"          */

スタイルシート
外部スタイルシート:スタイルが多くのページに適用されるのに適しています.ファイルにhtmlラベルを含めることはできません.
  
/*HTML   CSS   ,        */

スタイルシートファイルの例:
hr {color:sienna;}           
p {margin-left:20px;}     /*  :20px,  :20 px,【               】*/    
body {background-image:url(/images/back40.gif);}   

内部スタイルシート:単一のドキュメントには特殊なスタイルが必要で、ラベルでドキュメントのヘッダに内部スタイルシートを定義します.</p>
<pre class="has"><code><head>
<style>
hr {color:sienna;}
p {margin-left:20px;}
body {background-image:url("images/back40.gif");}
インラインスタイル:表現と内容を混ぜ合わせると、スタイルシートの多くのメリットが失われますので、ご注意ください.


≪マルチスタイル|Multiple Style|emdw≫:いくつかのプロパティが異なるスタイル・テーブルで同じセレクタで定義されている場合、プロパティ値はより具体的なスタイル・テーブルから継承されます.
外部スタイルシート
h3            
{            
color:red;            
text-align:left;            
font-size:8pt;            
}    

内部スタイルシート
h3            
{            
text-align:right;            
font-size:20pt;            
}    

内部スタイルシートを持つこのページが外部スタイルシートにリンクされている場合、h 3で得られるスタイルは、
color:red; text-align:right; font-size:20pt;

せきそう
スタイルシートでは、スタイル情報をさまざまな方法で指定できます.スタイルは、単一のHTML要素、HTMLページのヘッダ要素、または外部のCSSファイルに指定できます.同じHTMLドキュメント内で複数の外部スタイルシートを参照することもできます.
一般的に、すべてのスタイルは、次のルールに従って新しい仮想スタイルテーブルに積層され、数字4が最も優先されます.
  • ブラウザデフォルト
  • 外部スタイルシート
  • 内部スタイルシート(headラベル内部)
  • インラインスタイル(HTML要素の内部)
  • したがって、インラインスタイル(HTML要素の内部)は最も優先されます.これは、ラベルのスタイル宣言、外部スタイルシートのスタイル宣言、またはブラウザのスタイル宣言(デフォルト)よりも優先されることを意味します.
    優先度が段階的に増加したセレクタのリスト:
  • 汎用セレクタ(*)
  • 要素(タイプ)セレクタ:ラベルセレクタ重み1
  • クラスセレクタ:重み10
  • 属性セレクタ
  • 擬似
  • IDセレクタ:重み100
  • インラインスタイル:最大1000,
  • やる!importantルールがスタイル宣言に適用されると、そのスタイル宣言は宣言リストのどこにあってもCSS内の他の宣言を上書きします.それでも、!importantルールは優先度とは無関係です.使用!importantは、スタイルシートの本来のカスケードルールを変更し、デバッグを困難にする良い習慣ではありません.
    いくつかの経験則:
  • Alwaysスタイルルールを使用する優先度を最適化して問題を解決します.important
  • Onlyは、全局または外部css(例えば、参照されているExtJsまたはYUI)を上書きする必要がある特定のページでのみ使用されます.important
  • Neverはいつまでも全局範囲のcssで使用しないでください!important
  • Neverはあなたのプラグインで使用しないでください!important

  • CSS優先度法則:
  • Aセレクタには、重み値が大きいほど優先される重み値があります.
  • B重み値が等しい場合、後に現れるスタイルシートの設定は、先に現れるスタイルシートの設定よりも優れている.
  • C作成者の規則は閲覧者より高い:すなわち、ウェブページ作成者が設定したCSSスタイルの優先度はブラウザが設定したスタイルより高い;
  • Dで継承されたCSSスタイルは、後に指定されたCSSスタイルに及ばない.
  • Eは、同じ属性設定のセットに「!important」ルールが表示されている優先度が最も大きい.

  •