2.1 DOM検査・編集

Inspect and Edit the DOM

ElementsパネルはWebページのDOM(Document Object Model)構造を視覚的に表示し、リアルタイムで編集できる。HTML要素の構造把握、属性の確認・変更、要素の追加・削除など、フロントエンド開発の基本となる機能を提供する。

Elementsパネルを開く

方法 説明
Ctrl+Shift+C 要素検査モードで直接開く
右クリック → 検証 クリックした要素を選択して開く
F12 → Elementsタブ DevToolsを開いてElementsに切り替え

要素検査モード

ページ上の要素をクリックして、対応するDOMノードを選択するモード。

有効化方法

  • Ctrl+Shift+C
  • DevTools左上の矢印アイコン(Select element)をクリック

検査モードの機能

マウスカーソルを要素の上に置くと、以下の情報がオーバーレイ表示される:

  • 要素のタグ名とクラス
  • サイズ(幅 × 高さ)
  • マージン、パディング、ボーダーの視覚化
  • フォントサイズと色
  • コントラスト比(テキスト要素の場合)
詳細ツールチップ Settings → Preferences → Elements → 「Show detailed inspect tooltip」を有効にすると、より詳細な情報が表示される。

DOMツリーの操作

要素の展開・折りたたみ

操作 方法
展開 ▶をクリック、またはキー
折りたたみ ▼をクリック、またはキー
すべて展開 Alt+クリック、または右クリック→「Expand recursively」

要素間の移動

キー 動作
/ 前/次の要素を選択
要素を展開(展開済みなら最初の子要素へ)
要素を折りたたむ(折りたたみ済みなら親要素へ)

要素の検索

Ctrl+FでDOMツリー内を検索。以下の形式で検索可能:

  • テキスト検索: header
  • CSSセレクタ: .container#maindiv.item
  • XPath: //div[@class='item']

HTMLの編集

テキストの編集

操作手順

  1. 編集したいテキストノードをダブルクリック
  2. テキストを編集
  3. Enterまたは外側をクリックで確定

属性の編集

操作手順

  1. 属性名または属性値をダブルクリック
  2. 値を編集
  3. Tabで次の属性へ、Enterで確定

属性の追加

要素名の後ろをダブルクリックして新しい属性を入力。または右クリック → 「Add attribute」。

HTMLとして編集

操作手順

  1. 要素を右クリック → 「Edit as HTML」(またはF2
  2. HTMLを自由に編集
  3. 外側をクリックで確定、Escでキャンセル
編集の永続化 Elementsパネルでの編集はページのリロードで失われる。永続化したい場合はWorkspacesまたはLocal Overridesを使用する。ただし、DOM変更はWorkspacesでは保存されないため、HTMLファイルを直接Sourcesパネルで編集する必要がある。

要素の追加・削除・移動

要素の削除

  • Deleteキー
  • 右クリック → 「Delete element」

要素の非表示

Hキーで要素の表示/非表示を切り替え(visibility: hiddenを適用)。削除せずに一時的に非表示にしたい場合に便利。

要素の移動

要素をドラッグ&ドロップでDOM内の別の位置に移動できる。

要素の複製

右クリック → 「Duplicate element」で要素をコピー。

要素の追加

「Edit as HTML」で任意のHTML要素を追加可能。または既存要素をコピー&ペースト。

コピー操作

右クリック → 「Copy」から様々な形式でコピーできる。

オプション 説明
Copy outerHTML 要素とその内容をHTMLとしてコピー
Copy selector 要素を一意に特定するCSSセレクタ
Copy JS path 要素を取得するJavaScriptコード
Copy XPath 要素のXPathを取得
Copy full XPath ルートからの完全なXPath
Copy styles 適用されているスタイルをコピー
Cut element 要素を切り取り
Paste element 切り取った要素を貼り付け
JS pathの活用 「Copy JS path」で取得したコードは、Consoleで直接使用できる。例: document.querySelector("#container > div:nth-child(2)")

要素へのスクロール

長いページで要素の位置を確認したい場合:

  • 右クリック → 「Scroll into view」で要素が画面に表示される位置までスクロール

DOMブレークポイント

DOM要素の変更を検出してJavaScriptの実行を停止する機能。

設定方法

操作手順

  1. 要素を右クリック
  2. 「Break on」から条件を選択

ブレークポイントの種類

種類 トリガー条件
Subtree modifications 子要素が追加、削除、または移動された時
Attribute modifications 要素の属性が変更された時
Node removal 要素が削除された時
活用例 「なぜか要素が消える」「クラスが勝手に変わる」といった問題のデバッグに有効。DOMブレークポイントを設定すると、変更を行うJavaScriptコードの位置で停止する。

状態の強制

:hover、:active、:focus などの疑似クラス状態を強制的に適用できる。

設定方法

操作手順

  1. 要素を右クリック
  2. 「Force state」から適用したい状態を選択

または、Stylesペインの「:hov」ボタンから設定可能。

状態 説明
:active クリック中の状態
:hover マウスホバー状態
:focus フォーカス状態
:focus-within 子要素にフォーカスがある状態
:focus-visible キーボードフォーカス状態
:visited 訪問済みリンク状態
:target URLフラグメントのターゲット状態

アクセシビリティ情報

選択した要素のアクセシビリティ情報を確認できる。

Accessibility ペイン

Elementsパネル右側の「Accessibility」タブで以下を確認:

  • アクセシビリティツリーでの役割(Role)
  • ARIAプロパティ
  • Computed properties(計算済みプロパティ)

フルアクセシビリティツリー

Elementsパネル上部の「アクセシビリティツリーを表示」をクリックすると、DOMツリーの代わりにアクセシビリティツリーが表示される。スクリーンリーダーがページをどう認識するかを確認できる。

参考文献
[1] Get started with viewing and changing the DOM - Chrome DevTools. developer.chrome.com
[2] Pause code with DOM breakpoints - Chrome DevTools. developer.chrome.com