CSS ネスト、アニメーション構成、FormData コンストラクタのサブミッター パラメータ。
特に記載のない限り、下記の変更は Android、ChromeOS、Linux、macOS、Windows 向けの最新の Chrome Beta チャンネル リリースに適用されます。機能の詳細については、上記のリンクまたは ChromeStatus.com のリストをご覧ください。2023 年 3 月 9 日時点で Chrome 112 はベータ版です。最新版は Google.com(パソコン版)または Google Play ストア(Android 版)からダウンロードできます。
CSS
CSS ネスト
CSS スタイルルールを他のスタイルルール内にネストする機能。外側のセレクタと内側のルールを組み合わせて、スタイルシートのモジュール性と保守性を高めます。詳しくは、CSS のネストについての記事をご覧ください。
CSS animation-composition
プロパティ
animation-composition
プロパティを使用すると、複数のアニメーションが同じプロパティに同時に作用する場合に使用する複合オペレーションの仕様を指定できます。こちらのデモの例をご覧ください。
ウェブ API
「このページを再読み込みしてください」トップレベル フレームが権限の変更を監視している場合に情報バーが表示されなくなった
[このページを再読み込みする] が抑制されます。トップレベル フレームが PermissionStatus
の onchange
イベントに登録されている場合、情報バーが表示されます。これは、ページ情報ダイアログで開始されたカメラまたはマイクの権限の変更にアプリが動的に反応する必要があることを示します。イベント リスナーの有無にかかわらず、権限が取り消されるとすぐにメディア ストリームが終了するという既存の動作は変わりません。
FormData
コンストラクタにオプションのサブミッター パラメータを追加する
送信ボタンを FormData
コンストラクタに渡すことができます。ボタンが名前または画像ボタンの場合、フォームのデータセットに取り込まれます。これにより、ボタンによってトリガーされる標準のフォーム送信と同じデータセットを使用して FormData
オブジェクトを作成できます。
文字列の表記とプロパティのセットを含む RegExp v フラグ
集合演算子、文字列リテラル、ネストされたクラス、文字列の Unicode プロパティを正規表現の文字クラスに追加します。文字列の集合演算子と Unicode プロパティを使用すると、特定の Unicode 文字を含む文字列に一致する正規表現を簡単に作成できます。
たとえば /[\p{Script_Extensions=Greek}&&\p{Letter}]/v
は、すべてのギリシャ文字に一致します。
<dialog>
の初期フォーカス アルゴリズムを更新しました
<dialog>
要素が開かれたときにフォーカスを取得するために選択される要素が変更されました。
- ダイアログのフォーカス可能な要素ではなく、キーボードのフォーカス可能な要素を参照するようにします。
- オートフォーカス属性が設定されている場合、ダイアログ要素自体がフォーカスを取得できるようにします。
- ダイアログ要素自体にフォーカスをリセットするのではなく、フォールバックとしてフォーカスさせる追加する必要があります
WebAssembly の tail 呼び出し
明示的な tail 呼び出しと間接的な tail 呼び出しのオペコードを WebAssembly に追加。
ウェブワーカーでの WebGLContextEvent
WebGLContextEvent
型は、Khronos のWebGL は長年にわたって使用されていましたが、Blink ではこの型がウェブ ワーカーに公開されないことは最近まで気づきませんでした。
ほとんどのアプリケーションは、この型のイベント リスナーを追加するだけで、グローバル スコープでプロトタイプを探すことはありません。これは WebGLContextEvent
の Blink の Web IDL に対する簡単な修正ですが、ウェブで公開される変更です。
Service Worker の no-op 取得ハンドラをスキップ
この機能により、オペレーションのない Service Worker フェッチ ハンドラをスキップして、ページ間のナビゲーションが高速になります。
一部のサイトでは、no-op(オペレーションなし)フェッチ リスナー(onfetch = () => {}
など)があります。取得リスナーを持つことは、プログレッシブ ウェブアプリ(PWA)の要件の 1 つだったため、サイトが PWA として認識されるようにするためにこれを行ったと仮定します。ただし、Service Worker を起動して NoOps リスナーを実行するだけのオーバーヘッドが発生するだけで、コードには何も実行されないため、キャッシュやオフライン機能などのメリットは得られません。
このようなページへのナビゲーションを高速化するために、Chrome 112 以降では、Service Worker のフェッチ リスナーがすべて NoOps であるとユーザー エージェントが特定した場合、Service Worker の開始とリスナーのディスパッチがナビゲーションのクリティカル パスから省略されます。
この変更の一環として、すべての Service Worker のフェッチ リスナーが NoOps の場合、Chromium はコンソールに警告を表示します。デベロッパーは、不要なフェッチ リスナーを削除することを推奨します。サイトで役に立たないフェッチリスナーが使用されなくなると、この機能は今後非推奨となります。
エンコードの受け入れ: WebView での HTTPS 接続で br(Brotli)を使用
Brotli(content-encoding type: br
)は汎用の可逆圧縮アルゴリズムであり、現在利用可能な最良の汎用圧縮方式と同等の圧縮率と速度で、より高密度の圧縮を提供します(詳細については、google/brotli と RFC 7932 をご覧ください)。
Brotli の HTTP コンテンツ エンコード タイプ(Accept-Encoding: br
)は、Chrome バージョン 50 からサポートされていましたが、これまでは WebView で有効になっていませんでした。この機能は、安定性を確保するために段階的に展開され、WebView ベータ版のユーザー 50% が利用できるようになります。
オリジン トライアルが進行中
Chrome 112 では、次のオリジン トライアルを有効にできます。
FedCM: 自動再認証 API
最新バージョンの FedCM にはオプトインの自動再認証機能が含まれており、FedCM を使用した初期認証の後、ユーザーが戻ってきたときに自動的に再認証できます。
現在、ユーザーが FedCM を介して IdP(ID プロバイダ)を使用して RP(リライング パーティ)でフェデレーション アカウントを作成した後は、次回ウェブサイトにアクセスする際は、ユーザー インターフェースで同じ手順を行う必要があります。つまり、ログインフローを続行するには、ユーザーの明示的な確認と再認証を行う必要があります。FedCM の主な目標の 1 つは隠れたトラッキングを防ぐことであるため、このユーザー エクスペリエンス(UX)はユーザーが連携アカウントを作成する前は理にかなっていますが、ユーザーが一度使用すると不要になり、面倒になります。そのため Chrome では、RP がリピーター向けに選択できる、より合理化された UX を導入しています。
非推奨トライアル
RTCPeerConnection
の getStats()
メソッドは、type == "track"
または "stream"
である統計情報オブジェクトを返さなくなりました。この機能は Chrome 112 で削除されます。このトライアルにオプトインすると、必要な変更により多くの時間をかけることができます。
WebView での X-Requested-With のサポート終了
非推奨のオリジン トライアルでは、X-Requested-With
ヘッダーに依存するサービスを呼び出すときに、クロスオリジンの事前有効化がサポートされています。このオプションは Chrome 112 以降の WebView で使用できます。この機能の使用方法については、オリジン トライアルの設定手順をご覧ください。
WebView のデプリケーション トライアルで X-Requested に登録します。
非推奨と削除
このバージョンの Chrome では、以下の非推奨化と削除が導入されています。サポート終了の予定、現在のサポート終了、以前の削除のリストについては、ChromeStatus.com をご覧ください。
Chrome の今回のリリースでは、1 つの機能のサポートを終了します。
document.domain
セッターのサポート終了
document.domain
セッターを使用すると、デベロッパーは同一オリジン ポリシーを緩和して、Google が維持しようとしている基本的なセキュリティ境界を複雑化し、Spectre による Chromium のプロセスモデルの変更を妨げます。オリジンキー エージェント クラスタを介してオプトインされるようになりました。
Chrome のこのリリースでは、1 つの機能が削除されます。
RTCPeerConnection
の getStats()
メソッドから統計情報オブジェクト track
と stream
を削除しました
RTCPeerConnection
の getStats()
メソッドは、type == "track"
または "stream"
である統計情報オブジェクトを返さなくなりました。Chrome 112 で未公開。これらの指標の提供を Chrome 115 まで延長するデプリケーション トライアル(上述)あり。