Chrome 116 の新機能

必知事項は次のとおりです。

Adriana Jara です。Chrome 116 のデベロッパー向け新機能を詳しく見ていきましょう。

Document Picture-in-Picture API。

Document Picture-in-Picture API を使用すると、任意の HTML コンテンツを入力できる常時オンのウィンドウを開くことができます。

Sintel の予告編動画を再生するピクチャー イン ピクチャー ウィンドウ。
Document Picture-in-Picture API で作成されたピクチャー イン ピクチャー ウィンドウ(デモ)。

Document Picture-in-Picture API のピクチャー イン ピクチャー ウィンドウは、window.open() を使用して開かれる空白の同一オリジン ウィンドウに似ていますが、次のような違いがあります。

  • ピクチャー イン ピクチャー ウィンドウは、他のウィンドウの上にフロート表示されます。
  • ピクチャー イン ピクチャー ウィンドウは、開始ウィンドウより長く存続することはありません。
  • ピクチャー イン ピクチャー ウィンドウは操作できません。
  • ピクチャー イン ピクチャーのウィンドウの位置を、ウェブサイトで設定することはできません。

次の HTML は、カスタム動画プレーヤーと、動画プレーヤーをピクチャー イン ピクチャー ウィンドウで開くボタン要素を設定します。

<div id="playerContainer">
  <div id="player">
    <video id="video"></video>
  </div>
</div>
<button id="pipButton">Open Picture-in-Picture window</button>

次の JavaScript は、ユーザーがボタンをクリックして空白のピクチャー イン ピクチャー ウィンドウを開くと、documentPictureInPicture.requestWindow() を呼び出します。返される Promise は、ピクチャー イン ピクチャー ウィンドウの JavaScript オブジェクトで解決されます。動画プレーヤーは、append() を使用してそのウィンドウに移動されます。

pipButton.addEventListener('click', async () => {
  const player = document.querySelector("#player");

  // Open a Picture-in-Picture window.
  const pipWindow = await documentPictureInPicture.requestWindow();

  // Move the player to the Picture-in-Picture window.
  pipWindow.document.body.append(player);
});

詳細と例については、任意の要素のピクチャー イン ピクチャーをご覧ください。

DevTools にスタイルシートがないデバッグを改善。

DevTools に、欠落しているスタイルシートの問題を特定してデバッグするために、いくつかの改善が行われました。

まず、混乱を最小限に抑えるために、[ソース] > [ページ] ツリーに、正常にデプロイされて読み込まれたスタイルシートのみが表示されるようになりました。

また、[ソース] > [エディタ] で、失敗したステートメント、@importurl()href ステートメントの横に、インライン エラー ツールチップと下線が付き、表示されるようになりました。

下線が引かれたステートメントと [ソース] パネルのツールチップ。

  • コンソールに、失敗したリクエストへのリンクに加え、読み込みに失敗したスタイルシートを参照している行へのリンクが表示されるようになりました。

コンソールには、問題のある記述のある行へのリンクが表示されます。

[Network] パネルの [Initiator] 列には、読み込みに失敗したスタイルシートを参照する行へのリンクが一貫して入力されます。

[Issues] パネルには、URL の破損、失敗したリクエスト、@import ステートメントの不適切な配置など、スタイルシートの読み込みに関するすべての問題が一覧表示されます。

ソースとリクエストへのリンクを含む [Issues] パネル。

Chrome 116 の DevTools について詳しくは、DevTools の新機能をご覧ください。

など多数

他にもたくさんあります。

  • モーションパスを使用すると、任意のグラフィカル オブジェクトを配置して、デベロッパーが指定したパスに沿ってアニメーション化できます。
  • display プロパティと content-visibility プロパティがキーフレーム アニメーションでサポートされるようになりました。これにより、CSS のみで終了アニメーションを追加できます。
  • フェッチ API を Bring Your Own Buffer リーダーと併用できるようになり、ガベージ コレクションのオーバーヘッドとコピーが削減され、ユーザーの応答性が向上しました。

関連情報

ここでは、重要なハイライトについてのみ説明します。Chrome 116 で追加される変更については、以下のリンクをご覧ください。

登録

最新情報を入手するには、Chrome Developers YouTube チャンネル登録してください。新しい動画が公開されるたびに、メール通知が届きます。

Chrome 117 のリリースと同時に Chrome の新機能をお知らせします