安定版のリリース日: 2024 年 6 月 11 日
特に明記されていない限り、以下の変更は Android、ChromeOS、Linux、macOS、Windows 向けの Chrome 126 Stable チャンネル リリースに適用されます。
CSS
同一オリジン ナビゲーションのクロスドキュメント ビュー遷移
以前は、View Transitions API を使用するには、ウェブサイトを SPA に再設計する必要がありました。これは廃止されました。同一オリジンのナビゲーションで、ビュー遷移がデフォルトで有効になりました。同じオリジンの 2 つの異なるドキュメント間でビュー遷移を作成できます。
クロスドキュメント ビュー遷移を有効にするには、両端でオプトインする必要があります。これを行うには、@view-transition at-rule を使用して、navigation 記述子を auto に設定します。
@view-transition {
navigation: auto;
}
ドキュメント間のビュー遷移では、同じドキュメントのビュー遷移と同じ構成要素と原則が使用されます。view-transition-name が適用された要素がキャプチャされ、CSS アニメーションを使用してアニメーションをカスタマイズできます。
View Transition API によるスムーズな遷移 | トラッキング バグ #1372584 | ChromeStatus.com のエントリ | 仕様
ウェブ API
Gamepad API trigger-rumble 拡張機能
GamepadHapticActuator インターフェースを拡張して、互換性のあるゲームパッドのウェブでトリガー ランブル機能を公開します。この拡張機能により、Gamepad API を利用するウェブ アプリケーションで、この機能を搭載したゲームパッド デバイスのトリガーを振動させることができます。
トラッキング バグ #40834175 | ChromeStatus.com のエントリ | 仕様
ChromeOS のタブ形式ウェブアプリ
スタンドアロン ウィンドウの PWA では、一度に 1 ページしか開くことができません。 アプリによっては、ユーザーが一度に多くのページを開くことを想定している場合があります。タブモードでは、ChromeOS のスタンドアロン ウェブアプリにタブバーが追加され、複数のタブを同時に開くことができます。
この機能により、"tabbed" の新しい表示モードと新しいマニフェスト フィールドが追加され、タブバーをカスタマイズできるようになります。
トラッキング バグ #40598974 | ChromeStatus.com のエントリ | 仕様
GeolocationCoordinates と GeolocationPosition の toJSON() メソッド
GeolocationCoordinates インターフェースと GeolocationPosition インターフェースに .toJSON() メソッドを追加しました。これにより、JSON.stringify() を使用してこれらのオブジェクトをシリアル化できます。
WebGLObject Web IDL スーパー インターフェース
この機能は、WebGL API が公開されているのと同じコンテキスト(メインスレッドとワーカー)で WebGLObject 型を公開します。
CloseWatcher API を再度有効にし、<dialog> と popover="" のリクエストをクローズする
CloseWatcher API を使用すると、デスクトップ プラットフォームの ESC キーや Android の戻る操作またはボタンなど、終了リクエストを統一された方法で処理できます。この機能は、当初は Chrome 120 でリリースされましたが、<dialog> との予期しない相互作用により無効になりました。Chrome 126 では、問題が最小限に抑えられるように動作が改善され、再度有効になりました。
デモ | トラッキング バグ #1171318 | ChromeStatus.com のエントリ
Attribution Reporting API: attributionsrc リクエストのリファラー ポリシー
attributionsrc リクエストは、ページ上の他のサブリソースと同様に扱われます。
以前は、さまざまな HTML 要素(<img>、<script>、<a>、window.open など)の一部として attributionsrc 属性を使用して API が呼び出されると、<html> 要素に設定されたリソースレベルのリファラー ポリシー属性が無視されていました。
この変更により、attributionsrc リクエストは、<img>、<script>、<a>、window.open で設定された同じリソースレベルのリファラー ポリシーを適用するようになります。
これにより、広告テクノロジーは、attributionsrc リクエストのリファラー情報に関する制限を強化するかどうかをより細かく制御できます。
メディア
MediaRecorder の MP4 コンテナのサポート
MediaRecorder を使用して音声と動画を MP4 コンテナに多重化するサポートを追加しました。
MediaRecorder | ChromeStatus.com エントリ | 仕様
OpusEncoderConfig の signal パラメータと application パラメータ
OpusEncoderConfig.signal パラメータと OpusEncoderConfig.application パラメータは、実装固有のエンコーダノブに直接マッピングされます。これにより、ウェブ作成者は、エンコードされるデータの種類と、データが使用されるコンテキストに関するヒントを提供できます。
signal は、"auto"、"music"、"voice" のいずれかです。指定されたタイプのデータをエンコードする際に最適なパフォーマンスが得られるようにエンコーダを構成します。application は、"voip"、"audio"、"lowdelay" のいずれかです。エンコーダを構成して、音声の明瞭度、元の入力の忠実な再現、または最小レイテンシを優先します。
JavaScript
visualViewport onscrollend のサポート
scrollend JavaScript イベントは、スクロール操作が終了したことを示すために発生します。
visualViewport インターフェースには、visualViewport でのスクロール操作が終了したときに呼び出す必要がある onscrollend イベント ハンドラが含まれています。Chrome では、visualViewport.addEventListener("scrollend") を介した scrollend イベント リスナーの追加がすでにサポートされています。これにより、visualViewport.onscrollend を使用してイベント リスナーを追加することもできます。
トラッキング バグ #325307785 | ChromeStatus.com エントリ
プライバシー
navigator.cookieEnabled を仕様に合わせる
現在、navigator.cookieEnabled は、ある状況下で「ユーザー エージェントが Cookie を処理しようとしている」かどうかを示します。サードパーティ Cookie のサポート終了(3PCD)の一部として Chrome で変更が行われることにより、navigator.cookieEnabled はパーティション分割されていない Cookie へのアクセスが可能かどうかを知らせるようになります。この結果、ほとんどのクロスサイト iframe で false が返されるようになります。以前のようにサイトに対して Cookie が有効または無効にされた場合に示されるよう navigator.cookieEnabled の振る舞いを復元し、パーティション分割されていない Cookie へのアクセスが可能かどうかを示すクロスベンダー関数 document.hasStorageAccess に依存する必要があります。
トラッキング バグ #335553590 | ChromeStatus.com のエントリ | 仕様
ユーザー補助
Windows での UI オートメーション アクセシビリティ フレームワークのサポート
Microsoft Windows の最新の支援アプリケーションは、プラットフォームの UI オートメーション アクセシビリティ フレームワークを使用して、他のアプリケーションのユーザー インターフェースと相互運用します。これまで、Chromium はこの目的のために古い Microsoft Active Accessibility(MSAA)と IAccessible2(IA2)フレームワークをサポートしていましたが、これが Windows のユーザー補助ツールで問題を引き起こしていました。
この問題を解決するため、Microsoft は Chrome チームと協力して、Windows で UI オートメーション(UIA)フレームワークを直接サポートし、ユーザー補助ツールがブラウザと通信しやすくしました。Chrome バージョン 126 以降、Stable 版への段階的なロールアウトを開始します。これにより、すべての Chromium ベースのブラウザで Voice Access が機能するようになり、ナレーターや拡大鏡などのすべての UIA ベースのユーザー補助ツールのユーザー エクスペリエンスが向上します。
新しいオリジン トライアル
Storage Access API のトラスト シグナルとしての FedCM
以前の FedCM 権限付与をストレージ アクセス リクエストを自動的に承認する有効な理由にすることで、FedCM API と Storage Access API を調整します。
ユーザーが証明書利用者(RP)でサードパーティの ID プロバイダ(IdP)を使用して ID を使用する権限を付与すると、多くの IdP は、正しく安全に機能するためにサードパーティ Cookie を必要とします。この提案は、Storage Access API(SAA)の権限チェックを更新して、ストレージ アクセス プロンプトによって付与される権限だけでなく、FedCM プロンプトによって付与される権限も受け入れるようにすることで、この要件をプライベートかつ安全な方法で満たすことを目的としています。
このメカニズムの主な特性は、FedCM 権限ポリシーを通じて RP が明示的に許可したケースにのみ付与を制限し、RP のフレームごとの制御を適用して、FedCM がすでに付与している機能を超える IdP による受動的な監視を防ぐことです。
オリジン トライアル | 説明 | ChromeStatus.com のエントリ
メディア プレビューのオプトアウト
このリバース オリジン トライアルでは、メディア プレビューのリリースからサイトが除外されます。
ウェブサイトからカメラとマイクの権限がリクエストされると、Chrome はカメラとマイクの入力のリアルタイム プレビューを表示します。これらは、サイトの pageinfo からも確認できます。
また、複数のデバイスを使用しているユーザーは、サイトが getUserMedia() を通じて特定のデバイスをリクエストしていない限り、権限がリクエストされたときにカメラとマイクを選択できるようになります。
オリジン トライアル | トラッキング バグ #330762482 | ChromeStatus.com エントリ
FedCM: Continuation API、Parameters API、Fields API、複数の configURL、カスタム アカウント ラベル
デベロッパーは、認可を含むデスクトップ FedCM 機能のバンドルのオリジン トライアルに参加できるようになりました。このバンドルは、FedCM Continuation API、Parameter API、Fields API、複数の configURL、カスタム アカウント ラベルで構成されています。これにより、IdP が提供する権限ダイアログを含む、OAuth 認可フローのようなエクスペリエンスが実現します。
トラッキング バグ #40262526 | ChromeStatus.com エントリ
ページ埋め込み型の権限管理
権限フローを操作する新しい HTML 要素を指定します。
現在、権限プロンプトは JavaScript から直接トリガーされており、ユーザー エージェントはユーザーの意図を示す強力なシグナルを受け取っていません。ユーザーが権限フローをトリガーするために使用するコンテンツ内要素を用意することで、ユーザー向けの権限プロンプトの UX を改善できるだけでなく、サイトの「拒否」された権限状態からの復元パスも提供できます。
非推奨と削除
インポート アサーションの「assert」構文を非推奨にして削除
インポート属性構文の新しい with キーワードを優先して、assert キーワードを非推奨にして削除します。
つまり、import m from 'foo' assert { type: 'json' } は SyntaxError をスローするようになり、デベロッパーは import m from 'foo' with { type: 'json' } に変更する必要があります。
関連情報
さらに情報を探す場合は、以下の追加リソースをご確認ください。
- Chrome 126 の新機能
- Chrome DevTools 126 の新機能
- ChromeStatus.com の Chrome 126 に関する更新情報
- Chrome リリース カレンダー
- 今後のサポート終了
- 今後の削除