安定版リリース日: 2025 年 4 月 29 日
特に明記しない限り、以下の変更は Android、ChromeOS、Linux、macOS、Windows 版 Chrome 136 Stable チャンネル リリースに適用されます。
HTML と DOM
CanvasTextDrawingStyles
の言語サポート
<canvas>
DOM 要素は、他のすべての DOM 要素と同様に、フォント選択の言語固有の処理を定義するために使用される lang
属性を受け入れます(フォントがロケール固有のグリフを持つ場合)。ブラウザはこの属性を尊重します。ただし、OffscreenCanvas
の作成時に言語 / 地域情報を設定する方法はありません。そのため、オフスクリーン キャンバスの出力結果が、その出力を使用するキャンバスとは異なるレンダリング結果を生成する状態になる可能性があります。この機能では、CanvasTextDrawingStyles
に lang
IDL 属性が追加され、テキスト描画と指標の言語をデベロッパーが直接制御できるようになります。
トラッキング バグ #385006131 | ChromeStatus.com のエントリ | 仕様
CSS と UI
dynamic-range-limit
プロパティ
ページで HDR コンテンツの最大輝度を制限できるようにします。
バグのトラッキング用番号 #1470298 | ChromeStatus.com のエントリ | 仕様
パーティション :visited
リンク履歴
ユーザーの閲覧履歴の漏洩を防ぐため、アンカー要素は、このトップレベルのサイトとフレームのオリジンで以前にクリックされたことがある場合にのみ :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.encodeUtf8
と protectedAudience.decodeUtf8
の 2 つのスタンドアロン関数が提供され、これらのタスクを JavaScript で行うよりも約 1 桁効率的に実行できます。
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));
推測ルール: タグ フィールド
これにより、デベロッパーはタグフィールドを推測ルールに追加できます。このオプション フィールドは、推測ルールのソースを追跡するために使用できます。たとえば、中間サーバーで異なる方法で処理する場合などです。推測に関連付けられているタグは、Sec-Speculation-Tags
ヘッダーとともに送信されます。
バグのトラッキング #381687257 | ChromeStatus.com のエントリ | 仕様
ProgressEvent を更新して、loaded
と total
に double 型を使用する
ProgressEvent には、進捗状況を示す属性 loaded
と total
があり、その型は unsigned long long
になりました。
この機能では、これらの 2 つの属性の型が double
に変更されるため、デベロッパーは値をより細かく制御できます。たとえば、デベロッパーは total
が 1 で、loaded
が 0 から 1 に徐々に増加する ProgressEvent を作成できるようになりました。これは、max 属性が省略されている場合の <progress>
HTML 要素のデフォルトの動作と一致します。
プライバシーとセキュリティ
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:
- キャプチャされたタブにホイール イベントを転送。
- キャプチャされたタブのズームレベルを読み取り、変更します。
バグのトラッキング #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 エンコードは、ユーザーのデバイスとオペレーティング システムが必要な機能を備えている場合にのみサポートされます。
getCharNumAtPosition
、isPointInFill
、isPointInStroke
には DOMPointInit
を使用します。
この変更により、getCharNumAtPosition
、isPointInFill
、isPointInStroke
で SVGPoint
ではなく DOMPointInit
を使用するという点で、Chromium コードは SVGGeometryElement
と SVGPathElement
の最新の 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 のエントリ | 仕様
キャンバスのテキスト レンダリングの実装を更新
これはウェブに公開される変更ではありません。
CanvasRenderingContext2D
、measureText()
、fillText()
、strokeText()
の実装が大幅に変更されました。これはパフォーマンスに影響する可能性があるため、キャンバスを多用するアプリケーションが新しい実装を試すことができるオリジン トライアルを実施したいと考えています。
オリジン トライアル | バグのトラッキング #389726691 | ChromeStatus.com のエントリ
非推奨と削除
「HTMLFencedFrameElement.canLoadOpaqueURL()
」を削除
HTMLFencedFrameElement
メソッド canLoadOpaqueURL()
は 2023 年に navigator.canLoadAdAuctionFencedFrame()
に置き換えられ、それ以降、このメソッドを呼び出すと、新しい API を指す非推奨のコンソール警告が表示されます。このメソッドは Chrome 136 で削除されました。