4.1 Elements・Console
Elements Panel & Console Panel
リンク
DevToolsの起動方法
| 方法 | ショートカット |
|---|---|
| 標準起動 | F12 または Ctrl+Shift+I |
| 要素検査モード | Ctrl+Shift+C |
| Console直接 | Ctrl+Shift+J |
| 右クリック | 「検証」を選択 |
Elementsパネル
ページのDOM構造とCSSスタイルを検査・編集するツール。リアルタイムでページを変更して動作確認ができる。
DOM操作の基本
| 操作 | 方法 |
|---|---|
| 要素を選択 | Ctrl+Shift+C → ページ上をクリック |
| 要素を検索 | Ctrl+F でテキスト/CSS/XPath検索 |
| HTMLを直接編集 | 右クリック → Edit as HTML |
| 要素を移動 | ドラッグ&ドロップ |
| 要素を削除 | Delete キー |
| 表示/非表示 | H キー |
| 変更を元に戻す | Ctrl+Z |
右クリックメニューの活用
- Copy → Copy selector: CSSセレクタをコピー
- Copy → Copy JS path: document.querySelector()形式
- Copy → Copy XPath: XPathをコピー
- Force state: :hover, :active, :focusを強制適用
- Break on: DOM変更時にブレークポイント設定
- Store as global variable: Consoleでtemp1として参照可能に
- Scroll into view: 要素位置までスクロール
実務での活用例
- 他サイトのレイアウト構造を分析
- デザイン確認前にCSS値を仮調整
- 広告要素を特定して非表示化
- フォーム要素の属性確認・変更
Stylesペイン
選択要素のCSSを確認・編集できる。上から優先度順に表示され、打ち消し線はオーバーライドされたプロパティ。
スタイル編集
| 操作 | 方法 |
|---|---|
| プロパティ追加 | ルール内の空白をクリック |
| 値の編集 | 値をクリックして入力 |
| プロパティ無効化 | チェックボックスをOFF |
| 数値増減 | ↑↓で±1、Shiftで±10 |
| 色の編集 | カラープレビューをクリック |
| 新規ルール | 「+」ボタン |
関連タブ
- Computed: 最終計算値とその出所
- Layout: Flexbox/Gridの視覚的デバッグ
- Event Listeners: 要素にバインドされたイベント
- DOM Breakpoints: 設定済みのブレークポイント
Consoleパネル
JavaScriptの実行、ログ確認、エラー調査を行う。Escで他パネル下部にドロワー表示も可能。
ログレベル
| メソッド | 用途 | 表示 |
|---|---|---|
| console.log() | 一般ログ | 標準 |
| console.info() | 情報 | 青アイコン |
| console.warn() | 警告 | 黄色背景 |
| console.error() | エラー | 赤色背景 |
| console.table() | 表形式表示 | テーブル |
高度なログ出力
// テーブル表示
console.table([
{ name: 'Alice', age: 25 },
{ name: 'Bob', age: 30 }
]);
// グループ化
console.group('処理名');
console.log('ステップ1');
console.log('ステップ2');
console.groupEnd();
// 処理時間計測
console.time('処理A');
// ... 処理 ...
console.timeEnd('処理A');
// 条件付きログ
console.assert(x > 0, 'xは正の値である必要があります');
// スタックトレース
console.trace('呼び出し元を追跡');
// オブジェクト詳細
console.dir(document.body);
Console特殊変数
| 変数 | 意味 |
|---|---|
| $0 | Elementsで選択中の要素 |
| $1〜$4 | 過去に選択した要素 |
| $_ | 直前の式の評価結果 |
| $(selector) | document.querySelector()のエイリアス |
| $$(selector) | document.querySelectorAll()の配列版 |
| $x(xpath) | XPathで要素を検索 |
| copy(obj) | オブジェクトをクリップボードにコピー |
| clear() | Consoleをクリア |
便利なテクニック
// 選択中の要素のスタイルを確認
getComputedStyle($0)
// 要素のイベントリスナーを確認
getEventListeners($0)
// 関数の実行を監視
monitor(functionName)
// イベントを監視
monitorEvents($0, 'click')
Consoleのフィルタリング
- ログレベルでフィルタ: サイドバーでError/Warning等を選択
- テキストフィルタ: フィルタ入力欄に文字列を入力
- 正規表現: /pattern/形式で検索
- URLフィルタ: url:example.comで特定ソースのログのみ
- コンテキストフィルタ: ドロップダウンで拡張機能/iframeを選択
拡張機能開発での注意
Content Scriptのconsole.logは、そのページのDevToolsに出力される。Service Workerのログは、chrome://extensions の「Service Worker」リンクから開くDevToolsで確認する。
参考文献
[1] Chrome DevTools - Elements Panel
[2] Chrome DevTools - Console Reference
[1] Chrome DevTools - Elements Panel
[2] Chrome DevTools - Console Reference