Chrome 107 ベータ版

Screen Capture API や CSS グリッド テンプレート プロパティの補間などへの追加。

特に記載のない限り、下記の変更は Android、ChromeOS、Linux、macOS、Windows 向けの最新の Chrome Beta チャンネル リリースに適用されます。機能の詳細については、上記のリンクまたは ChromeStatus.com のリストをご覧ください。2022 年 9 月 29 日時点で Chrome 107 はベータ版です。最新版は Google.com(パソコン版)または Google Play ストア(Android 版)からダウンロードできます。

CSS grid-template プロパティの補間

CSS グリッドでは、grid-template-columns プロパティと grid-template-rows プロパティを使用して、グリッドの列と行のサイズをそれぞれ定義し、行のサイズをトラッキングできます。Microsoft の協力を得て、現在ではこれらのプロパティの補間をサポートしています。グリッド レイアウトで、アニメーションや遷移の中間点でスナップするのではなく、状態間をスムーズに遷移できるようになりました。

プライバシーに配慮した画面共有の管理

既存の Media Capture API と Streams API に Screen Capture API が追加され、メディア ストリームとしてキャプチャする画面または画面の一部(ウィンドウなど)をユーザーが選択できるようになりました。このストリームは録画したり、ネットワークを介して他のユーザーと共有したりできます。このベータ版では、この API にいくつかの新機能が追加されています。

DisplayMediaStreamConstraints.selfBrowserSurface

getDisplayMedia() の呼び出し時に、ユーザーに提示されるタブのリストから現在のタブを除外するかどうかをウェブ アプリケーションに指示するヒント。

これにより、アプリを実行しているタブをユーザーが誤って選択した場合に、誤って自己撮影が発生するのを防ぐことができます。ホールオブミラー効果が生まれ、ユーザーを混乱させ、リモート ユーザーとの会話を妨げます。

DisplayMediaStreamConstraints.surfaceSwitching

画面共有中に Chrome でタブ切り替えボタンを表示するかどうかをプログラムで制御するオプションを追加します。このオプションは navigator.mediaDevices.getDisplayMedia() に渡されます。

[代わりにこのタブを共有] ボタンを使用すると、ユーザーは共有するタブをシームレスに切り替えることができます。ビデオ会議のタブをもう一度選択したり、ボタンをクリックして getDisplayMedia() を再度開始したり、長いタブリストから新しいタブを選択したりする必要はありません。すべてのウェブ アプリケーションがこの動作を処理できるとは限らないため、この動作は条件付きで公開されます。

MediaTrackConstraintSet.displaySurface

getDisplayMedia() が呼び出されると、ブラウザは表示サーフェス(タブ、ウィンドウ、モニター)の選択肢をユーザーに提供します。displaySurface 制約を使用することで、特定のサーフェス タイプをユーザーにより目立つように表示したい場合に、ウェブ アプリケーションでブラウザにヒントを与えることができます。

必要以上の範囲に共有されないようにするため、これらの機能がどのように役立つかをご確認ください。

Resource Timing のレンダリング ブロック ステータス

リソースのレンダリング ブロック ステータスを示すフィールドを PerfomanceResourceTiming に追加しました。デベロッパーの観点からは現在、どのリソースが実際にレンダリング ブロックを行っているかを判断する唯一の方法は、複雑なヒューリスティックを使用することです。代わりに、新しいフィールドによって、関連する直接的なシグナルが提供されます。

権限ポリシーの生成元でのワイルドカード

この機能により、SCHEME://*.HOST:PORT(例: https://*.foo.com/)のような構造の権限ポリシーでワイルドカードがサポートされ、有効なオリジンを SCHEME://HOST:PORT から構築できます(例: https://foo.com/)。このためには、HOST が少なくとも eTLD+1(登録可能なドメイン)である必要があります。つまり、https://*.bar.foo.com/ は機能しますが、https://*.com/ は機能しません。スキームとポート セクションのワイルドカードはサポートされていないため、https://*.foo.com/https://foo.com/ にデリゲートしません。以前は、権限ポリシーは次のようになります。

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://cdn1.foo.com" "https://cdn2.foo.com")

この機能を使用すると、以下を使用できます。

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://*.foo.com")

<form> 要素で rel 属性をサポート

この機能では、フォーム要素に rel 属性を追加します。これにより、rel=noopener を持つフォーム要素によって移動されるウェブサイトに window.opener が存在するのを防ぎ、rel=noreferrer でリファラー ヘッダーが送信されるのを防ぐことができます。

オリジン トライアル

この Chrome のリリースでは、2 件の新しいオリジン トライアルが実施されました。

宣言型の PendingBeacon API

ビーコンを送信するタイミングをブラウザが制御できるステートフル ビーコン API。ビーコンとは、特定のレスポンスを期待せずにバックエンド サーバーに送信されるデータのバンドルです。多くの場合、ユーザーによるページへのアクセスの最後にこれらを送信することが望ましいですが、その「送信」するタイミングはありません。発生します。この API は送信をブラウザ自体に委任するため、デベロッパーが適切なタイミングで送信呼び出しを実装しなくても、ページのアンロード時またはページの非表示時にビーコンをサポートできます。

このトライアルは Chrome 109 まで実施される見込みです。こちらからトライアルにご登録ください

Permissions-Policy: アンロード

この機能を使用すると、ページでアンロード イベント ハンドラの実行を無効にできます。目標は、すべてのアンロード ハンドラを削除したサイトが新しいハンドラを誤って追加しないようにすることです。これにより、サイトがアンロード イベント ハンドラから移行できるようになり、BFCache のヒット率が向上します。

このトライアルは Chrome 109 まで実施される見込みです。こちらからトライアルにご登録ください

非推奨と削除

このバージョンの Chrome では、以下の非推奨化と削除が導入されています。サポート終了の予定、現在のサポート終了、以前の削除のリストについては、ChromeStatus.com をご覧ください。

Chrome の今回のリリースでは、1 つの機能のサポートを終了します。

予測 - CT

Expect-CT は、デフォルトで有効にされる前の Certificate Transparency(証明書の透明性)の適用をウェブサイトで有効にするための HTTP ヘッダーです。また、デベロッパーが CT の構成ミスを見つけるのに役立つレポート機能も備えています。

Expect-CT HTTP ヘッダーは、すべての公開ウェブサイトで CT の適用が必須となる前に、高価値のウェブサイトで CT の適用を有効にすることや、(Chrome で)CT の適用が必須となる前にレポートすることで、証明書の透明性(CT)のユニバーサル適用への移行をサポートすることを目的としています。しかし、Expect-CT は役に立たなくなりました。現在、Chrome ではすべての公開ウェブサイトで CT が必須になっているため、Expect-CT にはセキュリティの値がなくなりました。他のブラウザは Expect-CT を実装していないため、削除しても相互運用性上の問題はありません。