Chrome 127 ベータ版

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

CSS

今回のリリースでは、3 つの新しい CSS 機能が追加されました。

CSS font-size-adjust

font-size-adjust CSS プロパティを使用すると、全体的なフォントサイズを定義する大文字のサイズに対して小文字のサイズを変更できます。このプロパティは、フォント フォールバックが発生する可能性がある場合に役立ちます。

Chrome 127 には、フォント指標と値を渡すための 2 つの値の構文が含まれています。

CSS 生成コンテンツの複数引数のアラートテキスト

CSS content プロパティを使用すると、次の構文でユーザー補助用の代替テキストを指定できます。

.has-before-content::before {
    content: url("cat.jpg") / "A cute cat";
  }

上記の構文(代替テキストが 1 つの文字列で指定されている)は、すでに Chrome でサポートされています。Chrome 127 以降では、任意の数の要素で代替テキストを指定できます。文字列だけでなく、attr() 関数やカウンタも指定できます。次に例を示します。

.has-before-content::before {
  content: url("cat.jpg") / "A cute " attr(data-animal);
}

この機能のエントリには、カウンタのサポートの追加は含まれていません。

iframe でのビュー遷移のサポート

Chrome 127 以降では、メインフレームと同一オリジンの iframe で、同一ドキュメントのビューの同時遷移が 127 回可能になります。

以前は、同じオリジンの iframe で document.startViewTransition を使用してビュー遷移を実行すると、メインフレームが同時に遷移を実行している場合、機能しませんでした。iframe の遷移は自動的にスキップされます。これで、両方の遷移が実行されます。

iframe 内の同一オリジンのクロスドキュメント ナビゲーションでのビュー遷移もサポートされます。

ウェブ API

アトリビューション レポートの追加機能

Chrome 127 では、アトリビューション レポートに 2 つの機能が追加されました。集計デバッグ レポートを使用すると、サードパーティ Cookie のサポート終了後も、API 呼び出し元はデバッグ情報を引き続き受け取ることができます。アトリビューション スコープを使用すると、アトリビューション フィルタリングをより細かく制御できます。

コンテンツを自動的に全画面表示するための設定

新しい「自動全画面表示」コンテンツ設定により、企業管理者はユーザーの操作なしでサイトが全画面表示に入るように許可できます。ユーザーは、サイト設定ページで分離されたウェブアプリがこの機能を使用できるようにすることもできます。

ウィンドウ管理の権限とポップアップのブロック解除を組み合わせることで、さまざまな全画面表示機能を利用できるようになります。

  • 1 回の操作で全画面表示のポップアップを別画面で表示する。
  • 1 回の操作で全画面表示のコンテンツを複数の画面で表示する。
  • 新しい画面で全画面表示のコンテンツを表示する(接続されている場合)。
  • 1 回の操作で全画面表示のウィンドウを画面間で入れ替える。
  • ユーザー ジェスチャーの有効期限が切れた、または終了した後に、全画面表示でコンテンツを表示する。

この投稿には、以前、パーティション化された Cookie の CookiePartitionKey のためのクロスサイト祖先チェーン用ビットが含まれていました。これは Chrome 128 でリリースされます。

ピクチャー イン ピクチャーのドキュメント: ユーザーの有効化を伝播する

これにより、ドキュメントのピクチャー イン ピクチャー ウィンドウでのユーザー操作を、その開いたウィンドウ内でも使用できるようになります。これにより、ユーザーが有効にしないとアクセスできない API の使用がより人間工学的に適したものになります。ドキュメントのピクチャー イン ピクチャー ウィンドウのイベント ハンドラは、実際には開いたアプリのコンテキストで実行されるため、開いたアプリのコンテキストはユーザー ジェスチャーにアクセスする必要があります。

Importmap の整合性

現在、インポートされた ES モジュールの整合性チェックは行えません。そのため、サブリソースの完全性または require-sri-for CSP ディレクティブを必要とする環境では実行できません。

この機能により、インポート マップに integrity セクションが追加され、デベロッパーは ES モジュールの URL を完全性メタデータにマッピングし、想定されるハッシュと一致する場合にのみ読み込むようにできます。

キーボードでフォーカス可能なスクロール コンテナ

この機能には、次の変更が導入されています。

スクロールバーはデフォルトでクリック フォーカス可能、かつプログラマティック フォーカス可能となります。フォーカス可能な子のないスクローラーはデフォルトでキーボード フォーカス可能になります。

これは、すべてのユーザーがスクロールバーとスクロールバー内のコンテンツにアクセスしやすくなるようにするための重要な改善です。キーボードでフォーカス可能なスクロールバーに関する投稿で、そのメリットについて詳しく説明しています。Chrome 127 以降、キーボードでフォーカス可能なスクロールバーがデフォルトで有効になります。ウェブサイトがこの新機能に適応するまでに時間が必要な場合は、いくつかのオプションがあります。

プリレンダリングでの No-Vary-Search のサポート

No-Vary-Search のサポートを拡張し、以前のプリフェッチ サポートの上にプリレンダリングを行うようにしました。これにより、特定の URL クエリ パラメータが変更されても、プリレンダリング エントリが一致するようになります。No-Vary-Search HTTP レスポンス ヘッダーは、キャッシュ マッチング目的で URL のクエリの一部またはすべてを無視できることを宣言します。

この投稿には以前、スナップ イベントが含まれていましたが、これは Chrome 127 ではフラグが設定されており、今後のリリースで安定版にリリースされる予定です。

MediaMetadata の動画チャプター

セクションのタイトル、タイムスタンプ、スクリーンショット画像など、個々のチャプター情報を追加できるようになりました。これにより、ユーザーはメディアのコンテンツを操作できます。

これは ChromeOS のメディア通知にのみ表示され、Chrome ブラウザのグローバル メディア コントロールには表示されません。

WebGPU: GPUAdapter info 属性

同期 GPUAdapter info 属性を追加して、非同期 GPUAdapter requestAdapterInfo() メソッドと同じ物理アダプターに関する情報を取得します。

オリジン トライアルの進行状況

Chrome 127 では、次の新しいオリジン トライアルを有効にできます。

共有 Brotli と共有 Zstandard を使用した圧縮辞書転送

この機能では、Brotli(または Zstandard)で圧縮された HTTP レスポンスを外部辞書として、指定された以前のレスポンスを使用するためのサポートが追加されています。

プライベート ネットワーク アクセス(PNA)の 0.0.0.0 のサポート終了

PNA の完全なロールアウトに先立って、IP アドレス 0.0.0.0 へのアクセスをブロックすることをおすすめします。

Chrome では、PNA 仕様の一環として、一般公開されているウェブサイトからプライベート ネットワーク エンドポイントへの直接アクセスを非推奨にします。この仕様では、localhost(127.0.0.0/8)でリッスンするサービスはプライベートであると見なされます。Chrome の PNA 保護(https://chromestatus.com/feature/5436853517811712 の一部としてロールアウト)は、IP アドレス 0.0.0.0 を使用して macOS と Linux のローカルホストでリッスンしているサービスにアクセスすることで回避できます。

これは、localhost でリッスンしているウェブ アプリケーションをターゲットとする DNS リバインディング攻撃で悪用される可能性があります。

0.0.0.0 は実際には使用されていないため(使用すべきでもありません)、他のプライベート ネットワーク リクエストの非推奨とは別に非推奨となります。

サードパーティ Cookie のサポート終了

Google は、サードパーティ(クロスサイト)Cookie のデフォルト アクセスを廃止し、削除する予定です。まず 2024 年第 1 四半期に 1% のユーザーを対象にテストを開始し、その後 2025 年第 1 四半期から段階的に廃止する予定です。ただし、英国競争・市場庁の競争上の懸念事項をすべて解決することを条件とします。

サードパーティ Cookie の段階的な廃止は、プライバシー サンドボックス イニシアチブの中心的な取り組みです。この取り組みでは、新しい技術を通じて主要なユースケースをサポートしながら、ウェブ(およびそれ以外)でのクロスサイト トラッキングを責任を持って削減することを目指しています。

Storage、Service Worker、Communication API のパーティショニング

Chrome 115 以降、ストレージ API、サービス ワーカー API、通信 API はサードパーティのコンテキストでパーティショニングされます。Chrome 113 ~ 126 では、サイトは非推奨トライアルに参加して、ストレージ API、サービス ワーカー API、通信 API を一時的にパーティショニング解除し、以前の動作を復元できました。

Chrome 125 以降では、Storage Access API で Cookie 以外のストレージがサポートされるため、パーティション分割されていないストレージのユースケースのほとんどに対応できるようになります。これらのユースケースに該当しない場合は、Chrome 127 ~ 132 のユーザーが DisableThirdPartyStoragePartitioning 非推奨トライアルの更新をリクエストできるようになりました。更新は 6 つのマイルストーンでリクエストできます。

詳しくは、ストレージ パーティショニングのサポート終了に関するトライアルの更新に関するブログ投稿をご覧ください。

キーボードでフォーカス可能なスクロール コンテナの非推奨化トライアル

この機能には、次の変更が導入されています。

  • スクロールバーはデフォルトでクリック フォーカス可能、かつプログラマティック フォーカス可能となります。
  • フォーカス可能な子のないスクローラーはデフォルトでキーボード フォーカス可能になります。

これらの変更をリリースしようとしたところ、一部のサイトのコンポーネントで想定外の動作が発生することが判明しました。そのため、この破損を回避するために、この機能をリリースし直す必要がありました。この機能は、そのメリットを考慮して、127 でリリースされる予定です。影響を受けるサイトがコンポーネントを移行する時間を確保するため、サポート終了トライアルを開始します。有効にすると、この機能は無効になります。

非推奨と削除

このバージョンの Chrome では、以下の非推奨と削除が行われます。予定されている非推奨化、現在の非推奨化、過去の削除の一覧については、ChromeStatus.com をご覧ください。

このリリースの Chrome では、3 つの機能が削除されます。

ミューテーション イベント

Chrome 127 以降、ミューテーション イベントのサポートがデフォルトで無効になります。サイトの中断を避けるため、その前にコードを移行してください。さらに時間が必要な場合のため、いくつかのオプションが用意されています。

詳しくは、ミューテーション イベントのサポート終了に関するブログ投稿をご覧ください。

公開ウェブサイトからサブリソースへの「プライベート ネットワーク リクエスト」をセキュアなコンテキストに制限する

パブリック ウェブサイトのサブリソースに対するプライベート ネットワーク リクエストは、安全なコンテキストからのみ開始できるようにします。例としては、インターネットからイントラネットへのリクエストや、インターネットからループバックへのリクエストなどがあります。

これは、プライベート ネットワーク アクセスを完全に実装するための最初のステップです。

古い CSS カスタム ステータスの構文を削除

CSS カスタム ステータスの疑似クラスの名前が :--foo から :state(foo) に変更されます。新しい構文 :state(foo) がデフォルトで有効になっているため、:--foo 構文は削除されます。

Firefox と Safari は古い構文を実装しておらず、どちらも新しい構文をリリースしています。

追加の時間が必要なエンタープライズ ユーザーは、CSSCustomStateDeprecatedSyntaxEnabled ポリシーを使用できます。このポリシーは Chrome 131 で削除されます。