Chrome 142

安定版リリース日: 2025 年 10 月 28 日

特に記載がない限り、以下の変更は Android、ChromeOS、Linux、macOS、Windows 向けの Chrome 142 Stable チャンネル リリースに適用されます。

CSS と UI

::view-transition 要素の絶対位置指定

ビュー遷移では、要素の疑似サブツリーが使用されます。::view-transition はその遷移のルートです。以前は、::view-transition 要素は position: fixed を持つように指定されていました。CSS Working Group はこれを position: absolute にすることを決定したため、Chrome はその変更を反映するようになりました。

この要素の包含ブロックは、絶対位置または固定位置のいずれの場合でもスナップショットの包含ブロックのままなので、この変更は目立たないはずです。目立った違いは getComputedStyle のみです。

バグ #439800102 をトラッキング | ChromeStatus.com のエントリ | 仕様

ドキュメントの activeViewTransition プロパティ

View Transitions API を使用すると、開発者はさまざまな状態間の視覚的な遷移を開始できます。メインの SPA エントリ ポイントは startViewTransition() で、遷移オブジェクトを返します。このオブジェクトには、移行の進行状況を追跡するためのいくつかの Promise と機能が含まれており、移行をスキップしたり、移行のタイプを変更したりするなど、移行を操作できます。

Chrome 142 以降では、デベロッパーはこのオブジェクトを保存する必要がなくなります。document.activeViewTransition プロパティはこのオブジェクトを表します。進行中のトランジションがない場合は null になります。

これは MPA の遷移にも当てはまります。この場合、オブジェクトは pageswap イベントと pagereveal イベントでのみ使用できます。この更新では、移行期間中、document.activeViewTransition がこのオブジェクトに設定されます。

バグ #434949972 をトラッキング | ChromeStatus.com のエントリ | 仕様

:target-before 疑似クラスと :target-after 疑似クラス

これらの疑似クラスは、フラット ツリーの順序で決定される、同じスクロール マーカー グループ内のアクティブ マーカー(:target-current に一致)の前後のスクロール マーカーに一致します。

  • :target-before: グループ内のフラット ツリー順でアクティブなマーカーより前のすべてのスクロール マーカーに一致します。
  • :target-after: グループ内のフラット ツリー順でアクティブなマーカーの後に続くすべてのスクロール マーカーと一致します。

トラッキング バグ #440475008 | ChromeStatus.com のエントリ | 仕様

スタイル コンテナ クエリと if() の範囲構文

Chrome では、範囲構文のサポートを追加することで、CSS スタイルクエリと if() 関数が強化されています。

これにより、スタイルクエリが完全一致(style(--theme: dark) など)を超えて拡張されます。デベロッパーは、比較演算子(>< など)を使用して、カスタム プロパティ、リテラル値(10px や 25% など)、置換関数(attr()env() など)の値を比較できます。有効な比較を行うには、両側が同じデータ型に解決される必要があります。次の数値型に限定されます: <length><number><percentage><angle><time><frequency><resolution>

トラッキング バグ #408011559 | ChromeStatus.com のエントリ | 仕様

インタレスト起動元(interestfor 属性)

Chrome は <button> 要素と <a> 要素に interestfor 属性を追加します。この属性は、要素に「関心」の動作を追加します。ユーザーが要素に「関心を示す」と、ターゲット要素に対してアクションがトリガーされます(ポップオーバーの表示など)。ユーザーが要素にカーソルを合わせる、キーボードの特別なホットキーを押す、タッチスクリーンの要素を長押しするなどの方法で、ユーザーが要素に「関心を示した」ことをユーザー エージェントが検出します。関心が示された場合や失われた場合、ターゲットで InterestEvent が発生します。このターゲットには、ポップオーバーの表示や非表示など、ポップオーバーのデフォルトのアクションが設定されています。

トラッキング バグ #326681249 | ChromeStatus.com のエントリ | 仕様

一部の要素レンダリング モードのモバイルとパソコンのパリティ

size 属性と multiple 属性を使用すると、<select> 要素をページ内リストボックスまたはポップアップ付きのボタンとしてレンダリングできます。ただし、これらのモードはモバイル版 Chrome とパソコン版 Chrome で一貫して利用できるわけではありません。モバイルではページ内リストボックスのレンダリングが利用できず、パソコンでは multiple 属性が存在する場合にポップアップ付きのボタンが利用できません。

この更新により、モバイルにリストボックスが追加され、パソコンに複数選択ポップアップが追加されます。また、size 属性と multiple 属性を含むオプトインがモバイルとパソコンで同じレンダリング モードになるようになります。変更内容は次のとおりです。

  • size 属性の値が 1 より大きい場合、常にページ内レンダリングが使用されます。モバイル デバイスではこれまで無視されていました。
  • size 属性なしで multiple 属性が設定されている場合は、ページ内レンダリングが使用されます。モバイル デバイスでは、以前はページ内リストボックスではなくポップアップが使用されていました。
  • multiple 属性が size=1 で設定されている場合、ポップアップが使用されます。以前は、パソコンでページ内リストボックスを使用していました。

トラッキング バグ #439964654 | ChromeStatus.com のエントリ | 仕様

SVG <a> 要素で download 属性をサポート

この機能では、Chromium の SVGAElement インターフェースで download 属性のサポートが導入され、SVG 2 仕様に準拠しています。download 属性を使用すると、SVG ハイパーリンクのターゲットを移動するのではなくダウンロードするように指定できます。これは、HTMLAnchorElement で既にサポートされている動作を反映したものです。この機能強化により、主要なブラウザ間の相互運用性が向上し、HTML と SVG のリンク要素間で一貫した動作が保証されるため、デベロッパー エクスペリエンスとユーザーの期待が向上します。

トラッキング バグ #40589293 | ChromeStatus.com のエントリ | 仕様

グラフィック

WebGPU: primitive_index 機能

WebGPU に、新しい WGSL シェーダー組み込み primitive_index を公開する新しいオプション機能が追加されました。vertex_indexinstance_index の組み込み関数と同様に、サポートされているハードウェア上のフラグメント シェーダーにプリミティブごとのインデックスを提供します。プリミティブ インデックスは、仮想化されたジオメトリなどの高度なグラフィック技術に役立ちます。

トラッキング バグ #342172182 | ChromeStatus.com のエントリ | 仕様

WebGPU: テクスチャ形式 tier1 と tier2

レンダリング アタッチメント、ブレンディング、マルチサンプリング、解決、storage_binding などの機能で GPU テクスチャ形式のサポートを拡張します。

トラッキング バグ #445725447 | ChromeStatus.com のエントリ | 仕様

ウェブ API

FedCM - UI でサードパーティの iframe オリジンを表示するサポート

Chrome 142 より前は、FedCM の UI に常に最上位サイトが表示されていました。

これは、iframe が概念的にファーストパーティである場合(たとえば、foo.com に iframe foostatic.com があるが、ユーザーにとって意味がない場合)に有効です。

ただし、iframe が実際にはサードパーティのものである場合は、ユーザーが認証情報を共有する相手をよりよく理解できるように、UI に iframe のオリジンを表示することをおすすめします。たとえば、書籍出版ウェブアプリに写真エディタが埋め込まれていて、ユーザーが以前に写真エディタで保存したファイルにアクセスできるようにしたい場合があります。この機能はすでにご利用いただけるようになっています。

トラッキング バグ #390581529 | ChromeStatus.com のエントリ | 仕様

JSON モジュールの *+json MIME トークン検証の厳格化

*+json と一致する場合、MIME タイプのタイプまたはサブタイプに HTTP 以外のトークン コードポイント(スペースなど)が含まれている JSON モジュール スクリプト レスポンスを拒否します。これは、MIME Sniffing 仕様や他のエンジンと一致しています。これは Interop2025 モジュールの重点分野の一部です。

バグ #440128360 をトラッキング | ChromeStatus.com のエントリ | 仕様

Web Speech API のコンテキスト バイアス

この機能により、ウェブサイトは Web Speech API に認識フレーズ リストを追加することで、音声認識のコンテキスト バイアスをサポートできます。

デベロッパーは、フレーズのリストを提供して更新することで、それらのフレーズを優先するように音声認識モデルにバイアスをかけることができます。これにより、ドメイン固有の音声認識とパーソナライズされた音声認識の精度と関連性が向上します。

ChromeStatus.com のエントリ | 仕様

メディア セッション: enterpictureinpicture アクションの詳細に理由を追加

Media Session API の enterpictureinpicture アクションに送信される MediaSessionActionDetailsenterPictureInPictureReason を追加します。これにより、デベロッパーは、ユーザーが明示的にトリガーした enterpictureinpicture アクション(ユーザー エージェントのボタンなど)と、コンテンツが隠されたためにユーザー エージェントが自動的にトリガーした enterpictureinpicture アクションを区別できます。

トラッキング バグ #446738067 | ChromeStatus.com のエントリ | 仕様

セキュリティ

ローカル ネットワーク アクセスの制限

Chrome 142 では、ユーザーのローカル ネットワークへのリクエストを行う機能が制限され、権限プロンプトによって制御されます。

ローカル ネットワーク リクエストとは、パブリック ウェブサイトからローカル IP アドレスまたはループバックへのリクエスト、あるいはローカル ウェブサイト(イントラネットなど)からループバックへのリクエストを指します。ウェブサイトがこれらのリクエストを実行する機能を権限によって制限することで、ルーターなどのローカル ネットワーク デバイスに対するクロスサイト リクエスト フォージェリ攻撃のリスクを軽減し、サイトがこれらのリクエストを使用してユーザーのローカル ネットワークのフィンガープリントを生成する機能を制限できます。

この権限は安全なコンテキストに制限されています。権限が付与された場合、ローカル ネットワーク リクエストの混合コンテンツ ブロックも緩和されます(さまざまな理由で、多くのローカル デバイスが公的に信頼されている TLS 証明書を取得できないため)。

詳しくは、ローカル ネットワーク アクセスの新しい権限プロンプトをご覧ください。

トラッキング バグ #394009026 | ChromeStatus.com のエントリ | 仕様

ユーザー入力

相互運用可能な pointerrawupdate イベントが安全なコンテキストでのみ公開される

PointerEvents 仕様では、2020 年に pointerrawupdate が安全なコンテキストに制限され、イベントの発生とグローバル イベント リスナーの両方が安全でないコンテキストで非表示になりました。この機能により、Chrome は更新された仕様に準拠し、他の主要ブラウザとの相互運用が可能になります。

トラッキング バグ #404479704 | ChromeStatus.com のエントリ | 仕様

同一オリジン レンダラ開始ナビゲーションでの固定ユーザー アクティベーション

この機能により、ページが同じオリジンの別のページに移動した後も、固定ユーザー アクティベーションの状態が維持されます。ナビゲーション後のページでユーザー アクティベーションがないため、オートフォーカスで仮想キーボードを表示するなどのユースケースが実現できません。これは、SPA 上に MPA を構築したいデベロッパーにとっての障害となっていました。

トラッキング バグ #433729626 | ChromeStatus.com のエントリ | 仕様

オリジン トライアル

デバイスにバインドされたセッション認証情報

ウェブサイトがセッションを単一のデバイスに安全にバインドする方法。

これにより、サーバーはセッションをデバイスに安全にバインドできます。ブラウザは、サーバーのリクエストに応じて、秘密鍵の所有証明とともにセッションを定期的に更新します。

オリジン トライアル | デバイス バウンド セッション認証情報: 2 回目のオリジン トライアルが開始 | ChromeStatus.com のエントリ | 仕様