Chrome 136

安定版リリース日: 2025 年 4 月 29 日

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

HTML と DOM

CanvasTextDrawingStyles の言語サポート

<canvas> DOM 要素は、他のすべての DOM 要素と同様に、フォント選択の言語固有の処理を定義するために使用される lang 属性を受け入れます(フォントがロケール固有のグリフを持つ場合)。ブラウザはこの属性を尊重します。ただし、OffscreenCanvas の作成時に言語 / 地域情報を設定する方法はありません。そのため、オフスクリーン キャンバスの出力結果が、その出力を使用するキャンバスとは異なるレンダリング結果を生成する状態になる可能性があります。この機能では、CanvasTextDrawingStyleslang IDL 属性が追加され、テキスト描画と指標の言語をデベロッパーが直接制御できるようになります。

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

CSS と UI

dynamic-range-limit プロパティ

ページで HDR コンテンツの最大輝度を制限できるようにします。

バグのトラッキング用番号 #1470298 | ChromeStatus.com のエントリ | 仕様

ユーザーの閲覧履歴の漏洩を防ぐため、アンカー要素は、このトップレベルのサイトとフレームのオリジンで以前にクリックされたことがある場合にのみ :visited スタイルになります。

セルフリンクには例外があります。サイトの独自のページへのリンクは、このトップレベルのサイトとフレームのオリジンで以前にクリックされていなくても、:visited としてスタイル設定できます。この例外は、トップレベル フレームまたはトップレベル フレームと同じオリジンのサブフレームでのみ有効になります。サイトではユーザーがどのサブページにアクセスしたかがすでに把握されているため、新しい情報が漏洩することはありません。そのため、プライバシー上のメリットを引き続き利用できます。これは、ユーザー エクスペリエンスの向上にもつながる、コミュニティからのリクエストによる例外です。

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

接頭辞のない print-color-adjust

print-color-adjust プロパティを使用すると、印刷されたウェブページの色を調整できます。これは、Chrome ですでにサポートされている -webkit-print-color-adjust と同じですが、名前が標準化されています。

-webkit- 接頭辞のバージョンは削除されません。

MDN のドキュメント | トラッキング バグ #376381169 | ChromeStatus.com のエントリ | 仕様

string attr() 型の名前を raw-string に変更

CSS ワーキング グループは、string attr() 型を raw-string に置き換えることを決定しました。

したがって、Chrome 136 以降、attr(data-foo string)attr(data-foo raw-string) になります。

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

型に依存しない var() フォールバック

var() 関数のフォールバック部分は、参照されるカスタム プロパティの型を検証しません。

バグのトラッキング #372475301 | ChromeStatus.com のエントリ

ウェブ API

キャプチャされたポインタにクリック イベントをディスパッチする

pointerup イベントのディスパッチ中にポインタがキャプチャされた場合、UI イベント仕様に従って pointerdown イベントと pointerup イベントの最も近い共通祖先ではなく、キャプチャされたターゲットに click イベントがディスパッチされるようになりました。

キャプチャされていないポインタの場合、click ターゲットは変更されません。

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

マジック コメントによる明示的なコンパイル ヒント

JavaScript ファイルで即時解析とコンパイルする関数に関する情報をアタッチできます。

この情報はマジック コメントとしてエンコードされます。

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

ナビゲーション開始元を HTTP キャッシュ パーティション キーに組み込む

Chrome の HTTP キャッシュキー スキームが更新され、トップレベル ナビゲーションに関連するクロスサイト リーク攻撃を軽減するための is-cross-site-main-frame-navigation ブール値が追加されました。

具体的には、攻撃者が特定のページへのトップレベル ナビゲーションを開始し、そのページによって読み込まれることが知られているリソースに移動して、読み込みタイミングを使用して機密情報を推測するクロスサイト攻撃を防ぐことができます。また、この変更により、不正なサイトがナビゲーションを使用して、ユーザーが特定のサイトに以前にアクセスしたかどうかを推測するのを防ぐことで、プライバシーも強化されます。

バグのトラッキング用番号 #398784714 | ChromeStatus.com のエントリ | 仕様

Protected Audience: テキスト変換ヘルパー

WebAssembly とインターフェースする Protected Audience の入札とスコアリング スクリプトでは、文字列型のデータをバイト配列に効率的に変換する必要があります(たとえば、「メモリ」ArrayBuffer を使用して文字列を WebAssembly に渡したり、WebAssembly から渡したりするなど)。これにより、protectedAudience.encodeUtf8protectedAudience.decodeUtf8 の 2 つのスタンドアロン関数が提供され、これらのタスクを JavaScript で行うよりも約 1 桁効率的に実行できます。

ChromeStatus.com のエントリ

RegExp.escape

RegExp.escape は、文字列を受け取り、正規表現内のパターンとして使用できるエスケープされたバージョンを返す静的メソッドです。

次に例を示します。

const str = prompt("Please enter a string");
const escaped = RegExp.escape(str);
const re = new RegExp(escaped, 'g'); // handles reg exp special tokens with the replacement.
console.log(ourLongText.replace(re));

ChromeStatus.com のエントリ | 仕様

推測ルール: タグ フィールド

これにより、デベロッパーはタグフィールドを推測ルールに追加できます。このオプション フィールドは、推測ルールのソースを追跡するために使用できます。たとえば、中間サーバーで異なる方法で処理する場合などです。推測に関連付けられているタグは、Sec-Speculation-Tags ヘッダーとともに送信されます。

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

ProgressEvent を更新して、loadedtotal に double 型を使用する

ProgressEvent には、進捗状況を示す属性 loadedtotal があり、その型は unsigned long long になりました。

この機能では、これらの 2 つの属性の型が double に変更されるため、デベロッパーは値をより細かく制御できます。たとえば、デベロッパーは total が 1 で、loaded が 0 から 1 に徐々に増加する ProgressEvent を作成できるようになりました。これは、max 属性が省略されている場合の <progress> HTML 要素のデフォルトの動作と一致します。

ChromeStatus.com のエントリ | 仕様

プライバシーとセキュリティ

iframe の権限ポリシー レポート

「権限ポリシーの潜在的な違反」という新しい違反タイプを導入します。この違反タイプでは、権限ポリシー(レポート専用ポリシーを含む)と iframe に設定された allow 属性のみが検査され、適用された権限ポリシーと iframe に伝播された権限の競合が検出されます。

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

Accept-Language ヘッダー情報のフィンガープリントを削減

HTTP リクエストと navigator.languages で Accept-Language ヘッダー値文字列が公開する情報量を削減します。Chrome では、HTTP リクエストごとにユーザーの優先言語の完全なリストを送信する代わりに、Accept-Language ヘッダーでユーザーの最も優先される言語を送信するようになりました。

バグのトラッキング用番号: #1306905 | ChromeStatus.com のエントリ

ID

FedCM の更新

すべてのプロバイダを同じ get() 呼び出しに含めることで、FedCM が同じダイアログに複数の ID プロバイダを表示できるようにします。これにより、デベロッパーはサポートされているすべての ID プロバイダをユーザーに簡単に提示できるようになります。

Chrome 136 では、FedCM のパッシブモードでの別のアカウントの追加のサポートも終了します。この機能は、選択ツールで他の IdP アカウントとともに [別のアカウントを使用] ボタンを表示できるというものですが、現在使用されておらず、UX の観点からも、フローが複雑になる割に効果がないと指摘されています。(ただし、FedCM アクティブ モードでは引き続き機能します)。

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

ウェブ認証の条件付き作成(パスキーのアップグレード)

WebAuthn の条件付き作成リクエストを使用すると、ウェブサイトは既存のパスワード認証情報をパスキーにアップグレードできます。

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

画像とメディア

AudioContext 中断状態

"interrupted" 状態を AudioContextState に追加します。この新しい状態により、ユーザー エージェントは、排他的音声アクセス(VoIP)中やノートパソコンの蓋が閉まっているときに再生を一時停止できます。

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

キャプチャされたサーフェス コントロール

ウェブ アプリケーションで次のことができる Web API:

  1. キャプチャされたタブにホイール イベントを転送。
  2. キャプチャされたタブのズームレベルを読み取り、変更します。

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

CapturedSurfaceResolution

画面共有中にキャプチャされたサーフェスのピクセル比を公開します。

この機能により、アプリケーションはシステム リソースを節約したり、キャプチャされたサーフェスの物理解像度と論理解像度に応じて品質と帯域幅のトレードオフを調整したりできます。

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

WebRTC での H265(HEVC)コーデックのサポート

この変更により、HEVC は VP8、H.264、VP9、AV1 に加わり、WebRTC でサポートされるコーデックになります。サポートは MediaCapabilities API を使用してクエリできます。

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

MediaRecorder の H26x コーデック サポートの更新

Chromium の MediaRecorder API が HEVC エンコードをサポートし、hvc1.* コーデック文字列を導入しました。また、MP4 で可変解像度の動画をサポートする新しいコーデック(hev1.* と avc3.*)を追加しました。

Chromium M130 の WebCodecs に HEVC プラットフォーム エンコードのサポートが追加されました。フォローアップとして、Chromium の MediaRecorder API にサポートが追加されました。この API では、異なる HEVC と H.264 の MIME タイプ仕様を持つ MP4 と Matroska の両方の muxer タイプがサポートされるようになりました。HEVC エンコードは、ユーザーのデバイスとオペレーティング システムが必要な機能を備えている場合にのみサポートされます。

ChromeStatus.com のエントリ

getCharNumAtPositionisPointInFillisPointInStroke には DOMPointInit を使用します。

この変更により、getCharNumAtPositionisPointInFillisPointInStrokeSVGPoint ではなく DOMPointInit を使用するという点で、Chromium コードは SVGGeometryElementSVGPathElement の最新の W3C 仕様に準拠するようになります。

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

WebGPU: GPUAdapterInfo isFallbackAdapter 属性

GPUAdapterInfo isFallbackAdapter ブール値属性は、互換性の拡大、動作の予測可能性の向上、プライバシーの向上と引き換えに、アダプタのパフォーマンスが大幅に制限されているかどうかを示します。なお、フォールバック アダプターはすべてのシステムに存在するとは限りません。

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

ブラウザの変更

Fluent スクロールバー

この機能により、Windows と Linux の Chromium のスクロールバー(オーバーレイと非オーバーレイの両方)がモダナイズされ、Windows 11 のフルーエント デザイン言語に適合します。

Linux と Windows では、オーバーレイ以外の Fluent スクロールバーがデフォルトで有効になります。この変更は Linux にも適用されます。Chromium の Linux のスクロールバーのデザインは、これまで Windows で提供されているものと整合していました。有効なオーバーレイ Fluent スクロールバーを公開する方法はまだ決定中です。

バグのトラッキング: #1292117 | ChromeStatus.com のエントリ

オリジン トライアル

Audio Output Devices API: setDefaultSinkId()

この機能により、setDefaultSinkId()MediaDevices に追加され、トップレベル フレームがサブフレームで使用されるデフォルトのオーディオ出力デバイスを変更できるようになります。

オリジン トライアル | ChromeStatus.com のエントリ | 仕様

ウェブ アプリケーションでバイモーダル パフォーマンスのタイミングを把握できるようにする

ウェブアプリケーションは、ウェブアプリケーションの制御外の要因により、ページ読み込みパフォーマンスのバイモーダル分布が発生する可能性があります。次に例を示します。

  • ユーザー エージェントを初めて起動するとき(「コールド スタート」シナリオ)は、システム上のリソースを競合する多くのコストの高い初期化タスクを実行する必要があります。
  • ブラウザ拡張機能はウェブサイトのパフォーマンスに影響する可能性があります。たとえば、一部の拡張機能は、アクセスするすべてのページで追加のコードを実行します。これにより CPU 使用率が増加し、レスポンス時間が遅くなる可能性があります。
  • マシンが負荷の高いタスクの実行でビジー状態になると、ウェブページの読み込みが遅くなる可能性があります。

PerformanceNavigationTiming オブジェクトに新しい confidence フィールドが追加され、デベロッパーはナビゲーションのタイミングがウェブアプリを代表するものかどうかを判断できるようになります。

オリジン トライアル | トラッキング バグ #1413848 | ChromeStatus.com のエントリ | 仕様

キャンバスのテキスト レンダリングの実装を更新

これはウェブに公開される変更ではありません。

CanvasRenderingContext2DmeasureText()fillText()strokeText() の実装が大幅に変更されました。これはパフォーマンスに影響する可能性があるため、キャンバスを多用するアプリケーションが新しい実装を試すことができるオリジン トライアルを実施したいと考えています。

オリジン トライアル | バグのトラッキング #389726691 | ChromeStatus.com のエントリ

非推奨と削除

HTMLFencedFrameElement.canLoadOpaqueURL()」を削除

HTMLFencedFrameElement メソッド canLoadOpaqueURL() は 2023 年に navigator.canLoadAdAuctionFencedFrame() に置き換えられ、それ以降、このメソッドを呼び出すと、新しい API を指す非推奨のコンソール警告が表示されます。このメソッドは Chrome 136 で削除されました。

ChromeStatus.com のエントリ