CSSスタイルの記述順序と命名規則と注意事項

CSSスタイルの記述順序と命名規則と注意事項

書き順の重要性

ブラウザのリフローを減らし、ブラウザのDOMレンダリングパフォーマンスを向上させる

①: HTMLを解析してDOMツリーを構築し、CSSを解析してCSSツリーを構築します。HTMLをツリー状のデータ構造に解析し、CSSをツリー状のデータ構造に解析します。

②:レンダリングツリーを構築します。DOMツリーとCSSツリーをマージした後に形成されるレンダリングツリーです。

③:レイアウト レンダリング ツリー: レンダリング ツリーにより、ブラウザーは Web ページ内のノード、各ノードの CSS 定義、およびそれらの従属関係をすでに把握しており、画面上の各ノードの位置を計算します。

④:レンダリングツリーを描画:計算されたルールに従って、コンテンツがグラフィックカードを通じて画面に描画されます。

ブラウザ画面に表示する CSS スタイルの解析は、手順②③④で行われます。ブラウザは CSS スタイルを取得した後すぐに解析を開始するのではなく、CSS スタイルの記述順序に従って DOM ツリーの構造に応じてレンダリング スタイルを分配し、手順を完了してから、各ツリー ノードの CSS スタイルのトラバースを開始して解析していることがわかります。このとき、CSS スタイルのトラバース順序は、以前の記述順序に完全に従います。

優先順位第一 - ポジショニング属性:

{
      display は、要素が生成するボックスの種類を指定します。
      position 配置は要素の配置タイプを指定します。
      float ボックスをフロートさせるかどうかを指定します。
      左     
      トップ  
      右  
      底   
      overflow は、コンテンツが要素のボックスから溢れた場合に何が起こるかを指定します。
      clear は、z-index セット要素の積み重ね順序をクリアします。
      コンテンツリスト形式  
          可視性 可視性/表示}

優先度2 - 独自の属性:

{
     幅
     身長
     国境
     パディング    
     マージン   
     背景
}

優先度3 - テキストスタイル:

{
        フォントファミリー   
        フォントサイズ   
        font-style テキストのフォント スタイルを指定します。
        フォントの太さ   
        font-variant テキストを小文字フォントの色で表示するかどうかを指定します   
   }

優先度4 - テキスト属性:

{
        text-align はテキストの水平方向の配置を指定します。
        vertical-align 要素の垂直方向の配置を設定します。
        text-wrap はテキストの改行ルールを指定します。
        text-transform はテキストの大文字と小文字を制御します。
        text-indent は、テキスト ブロックの最初の行のインデントを指定します。
        text-decoration テキストに追加する装飾を指定します。
        letter-spacing は文字間隔を設定します。
        word-spacing は単語間隔を設定します。
        white-space 要素内の空白の処理方法を指定します。
        text-overflow は、テキストが含まれる要素からテキストが溢れた場合に何が起こるかを指定します。
   }

優先度 5 - CC3 で追加された新しい属性:

{  
         box-shadow はボックスに 1 つ以上の影を追加します。
         カーソル 表示されるカーソルの種類 (形状) を指定します。
         境界線の半径  
         背景:線形グラデーション
         transform... 要素に 2D または 3D 変換を適用します。
   }

CSS コードの命名規則

  • すべてのブラウザでの互換性を確保するために、セレクター名は文字で始まる必要があります。
  • 1 文字のクラス セレクターは使用できません。
  • モジュールがブラウザによってスパムとしてフィルタリングされるのを防ぐため、モジュールに ad、adv、aver、advertising などの英語の単語を使用した名前を付けることはできません。これはどのファイルの命名でも同様です。
  • クラス名ではアンダースコア '_' は使用できません。すべて小文字を使用してください。ハイフン '-' を使用してください。
  • キャメルケースのクラス名を許可しない
  • 名前は明らかだ

CSS コードノート

  • 大規模な汚染を引き起こすため、意味のないタグをセレクターとして使用しないでください。
  • CSS のカラー プロパティ値の省略形
  • 0であるCSSプロパティ値を削除する
  • 不要なCSSスタイルを削除する
  • 単一のCSSセレクタまたは新しい宣言の場合は新しい行を開始します
  • 過度な省略は避けてください。.ico はアイコンであることを示すのに十分ですが、.i は何も意味しません。
  • 意味のある名前を使い、抽象的な名前ではなく構造的または目的に関連した名前を使う

要約する

CSS スタイルの記述順序と命名規則に関するこの記事はこれで終わりです。より関連性の高い CSS 記述順序コマンド標準については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  nginx のロードバランシングとリバースプロキシの説明

>>:  ウェブページのカラーマッチングにおけるオーバーラップとソフトカラーマッチングの手法を詳しく説明

推薦する

ファイルをアップロードするための HTML フォームの「参照」ボタンを変更する方法

コードをコピーコードは次のとおりです。 <!DOCTYPE HTML PUBLIC "...

HTML で JavaScript を使用する

<script> タグHTML5では、スクリプトには次の属性があります: async、d...

デザイナーと開発者に役立つ 9 つの超実用的な CSS のヒント

Web デザイナーの頭の中には、仕事に関連する多くの知識が詰まっている必要があります。 CSS は、...

Nginx を使用して https ルートドメイン名への 301 リダイレクトを実装するためのサンプル コード

SEO とセキュリティを考慮して、301 リダイレクトが必要です。以下の一般的な処理には Nginx...

ブラウザをJavaScriptで対話させる方法

目次1. 最も単純な例2. 音声の速度とピッチをカスタマイズする3. 音量の調整方法4. よく使われ...

HTML タイトル属性をラップする方法

数日前にプログラムを書いていたとき、プロンプト情報 (TITLE) を新しい行で囲みたいと思いました...

localStorageの有効期限を設定するいくつかの方法

目次問題の説明1. 基本的な解決策2. 中間的な解決策3. 高度なソリューション4. ハードコアソリ...

Docker デプロイメント MySQL8 クラスター (マスター 1 台とスレーブ 2 台) の実装手順

目次1. CentOS 7.9 20にDockerをインストールする2. MySQL クラスターをデ...

JavaScriptプロトタイプとプロトタイプチェーンを徹底的に理解する

目次序文基礎を築くプロトタイプコンストラクタのプロパティ__プロト__プロトタイプチェーン改善する要...

HTML 内の input type="reset" タグが無効 (機能しない) である理由として考えられるもの。

<html:reset> タグを使用すると、リセット ボタンが無効になり、ボタンをクリッ...

MyBatis 動的 SQL の包括的な説明

目次序文動的SQL 1. まずモジュールのディレクトリ構造を見てみましょう2. 物理モデリングと論理...

MySQL統計テーブルのサイズを説明する例

各データベース内の各テーブルのサイズをカウントすることは、データ ガバナンスの最も単純な要件の 1 ...

Linuxはlsof/extundeleteツールを使用して、誤って削除されたファイルやディレクトリを復元します。

序文Linux には Windows のような目立つごみ箱がないため、簡単に復元することはできません...

MySQLクエリステートメントの簡単な操作例

この記事では、例を使用して、MySQL クエリ ステートメントの簡単な操作を説明します。ご参考までに...

TypeScript 列挙の基本と例

目次序文TypeScript の列挙型とは何ですか? TypeScriptで列挙型を使用する際に注意...