Firefox 153 release notes for developers (Stable)
このページでは、開発者に影響する Firefox 153 の変更点をまとめています。 Firefox 153 は、米国時間 2026 年 7 月 21 日 にリリースされました。
ウェブ開発者向けの変更点一覧
>開発者ツール
- 開発者ツールのアクセシビリティハイライト表示およびアクセシビリティツリーで、見出し要素の見出しレベルを表示するようになりました (以前は、見出しであるという事実のみ表示していました)。 この情報は Accessibility Inspector panel で確認できます (Firefox bug 1588784、Firefox bug 2044904)。
HTML
<select>要素の HTML 構文解析規則を、<option>、<optgroup>、<hr>だけでなくすべてのネストされた要素を DOM に解析できるように更新しました。 これは将来、カスタマイズ可能な select 要素 をサポート可能にします (Firefox bug 2019977)。<audio>および<video>要素で、muted属性が DOM から追加または削除されたことを反映するように更新しました。この属性は:mutedCSS 擬似クラスの状態にも一致します (Firefox bug 2037015)。
CSS
::-webkit-scrollbar擬似要素セレクターを認識して、@supports selector(::-webkit-scrollbar)の確認がtrueを返すようになりました。::-webkit-scrollbarによるスクロールバーのスタイル設定を実際はサポートしていないにもかかわらず、セレクターはサポートしていると報告することに注意してください。これは、ネストしたスクロール可能な領域でスクロールバーが互いに重なり合う問題を修正するために追加しました。たとえば、スクロールバーをdisplay: noneまたはwidth: 0に設定すると一部のコンテンツにアクセスできなくなる場合です (Firefox bug 2038877)。
JavaScript
- TC39 Intl.Locale info proposal をサポートしました。
これには、
Intl.Localeで接頭辞 "get" を伴うすべてのインスタンスメソッドであるgetCalendars()、getCollations()、getHourCycles()、getNumberingSystems()、getTextInfo()、getTimeZones()、getWeekInfo()が含まれます (Firefox bug 2037069)。 - エラーのスタックトレースでキャプチャーされるスタックフレームの最大数を設定または取得する静的データプロパティである
Error.stackTraceLimitをサポートしました。 デフォルトより小さい値を設定することでパフォーマンスを向上できます (Firefox bug 2037856)。 with { type: "text" }を使用して、テキストモジュールを文字列にインポートできるようになりました。 レスポンスのメディアタイプが無視されることが JavaScript または CSS のモジュールとは異なっており、ファイルにスクリプトやほかの実行可能なコードが含まれていてもコンテンツはテキストとして解析されます (Firefox bug 2039881)。import source構文 (TC39 source phase imports 提案の一部) をサポートしました。 これは通常のimport宣言に似ていますが、モジュールを読み込んで評価するのではなく、後で評価できるモジュールのソースコードを表すオブジェクトを生成します。 現在は構文のみサポートしており、この機能は開発者に対してまだ有用ではないことに注意してください。WebAssembly モジュールのソースの表現は別に実装しており、まだ利用できません (Firefox bug 2043242)。
API
IDBObjectStore.getAllRecords()およびIDBIndex.getAllRecords()メソッドをサポートしました。 これらはそれぞれ、オブジェクトストアおよびインデックスからすべてのレコード (またはレコードの特定のサブセット) を取り出します (Firefox bug 1927945)。- ピクチャインピクチャ API をデスクトップ環境でサポートしました。
これは ウェブサイトが
<video>要素の表示をページ内と最前面のフローティング動画ウィンドウの間で切り替えるための便利な仕組みを提供して、ユーザーがほかのサイトやアプリケーションと対話しながら動画の視聴を続けることができます (Firefox bug 1463402)。
DOM
- ポップオーバー API で、
hintおよびautoのポップオーバーを開閉するとき の動作がより一貫性のあるものになりました。 これは whatwg/html#12345 の仕様更新に従います (Firefox bug 2029974)。
Media、WebRTC、Web Audio
RTCDtlsTransport.getRemoteCertificates()メソッドで、安全な DTLS 通信のためにリモートピアが使用する証明書を取得します。 これは、リモートピアのアプリケーション層における認証に使用できます (Firefox bug 1805446)。MediaCapabilitiesインターフェイスのdecodingInfo()およびencodingInfo()メソッドが"webrtc"構成タイプを受け入れるようになりました。 これにより、特定の音声または映像の構成が WebRTC を使用してデコードまたはエンコードできるか、およびその処理がスムーズか電力効率的か、あるいはその両方かをサイトが確認できます。webrtcの別名として使用されていた、非標準のtransmissionタイプは削除しました (Firefox bug 2037610、Firefox bug 2032075)。RTCStatsReportで、WebRTC の "transport" 統計情報のすべての必須項目および一部のオプション項目を報告できるようになりました。 返されるオブジェクトはdtlsCipher、dtlsRole、dtlsState、iceLocalUsernameFragment、iceRole、iceState、id、selectedCandidatePairId、srtpCipher、timestamp、tlsVersion、typeの各プロパティを持つRTCTransportStatsオブジェクトです。 また、transportIdプロパティがRTCOutboundRtpStreamStats、RTCRemoteOutboundRtpStreamStats、RTCRemoteInboundRtpStreamStats、RTCInboundRtpStreamStatsでも使用可能になりました (Firefox bug 1225723、Firefox bug 2019389)。
WebAssembly
- JavaScript Promise Integration (JS-PI) が有効になり、WebAssembly モジュールが非同期の
Promiseベースの JavaScript API と相互運用できるようになりました。これにより WebAssembly のコードが JavaScript プロミスを待つ間に一時停止する、およびプロミスが決定したときに再開できるようになります 説明や動作例についてはWebAssembly.Suspendingをご覧ください (Firefox bug 2044809)。
WebDriver への適合 (WebDriver BiDi, Marionette)
一般
- Marionette および WebDriver BiDi のウィンドウ操作コマンドを、x 座標・y 座標・幅・高さといった個々のウィンドウのジオメトリープロパティを個別に調整できるように改良しました (Firefox bug 1941404)。
- 要素の最初の DOMRect (たとえば複数の行にまたがるインライン要素) のサイズがゼロである場合に、クリックやポインターアクションのコマンドが失敗する不具合を修正しました (Firefox bug 2038932)。
- content スコープで操作しているときは、特権ページ (特定の
about:*ページ、chrome://、resource://URL) へのナビゲーションを制限します (Firefox bug 1579790)。
WebDriver BiDi
emulation.setLocaleOverrideコマンドを、専用ワーカーおよび共有ワーカーでもロケールのエミュレーションを適用するように拡張しました (Firefox bug 2015655)。emulation.setTimezoneOverrideコマンドを、専用ワーカーおよび共有ワーカーでもタイムゾーンのエミュレーションを適用するように拡張しました (Firefox bug 2015657)。browsingContext.createコマンドを、新しいトップレベルのブラウジングコンテキストを作成したときに初期のabout:blankに対してbrowsingContext.domContentLoadedおよびbrowsingContext.loadイベントが発生しないように更新しました。また、作成処理の完了時にbrowsingContext.contextCreatedイベントが発生するようになりました (Firefox bug 1930594)。script.addPreloadScriptコマンドで作成した関数が、数回ナビゲーションした後に動作しなくなる場合がある不具合を修正しました (Firefox bug 2046390)。
Marionette
- WebDriver Classic の
Take Element Screenshotコマンドを、ビューポートからはみ出した要素をスクリーンショットから切り落とすように修正しました (Firefox bug 2013176)。 - 内部のアクションが完了するのを適切に待つように
Perform Actionsコマンドを修正して、潜在的な競合状態を防ぐようになりました (Firefox bug 2031596)。
アドオン開発者向けの変更点一覧
- 拡張機能が
file://URL へアクセスするために、明示的なユーザーの許可が必要になりました。以前は "保存されたすべてのウェブサイトのユーザーデータへのアクセス" のホスト権限にローカルファイルへのアクセスが含まれていました。この変更は拡張機能の権限設定 (デスクトップに限る) の "ユーザーのコンピューター上のローカルファイルへのアクセス" オプションを個別に導入して、すでに存在するものを含めてすべての拡張機能でファイルアクセスがデフォルトで無効になります。また、extension.isAllowedFileSchemeAccess()メソッドはユーザーがファイルスキームへのアクセスを許可した場合に正しくtrueを返すようになりました。以前は Firefox が常にfalseを返していました。さらに、file://URL でdevtools.inspectedWindow.eval()を呼び出す際にこの許可が必要になりました (Firefox bug 2034168)。 - 拡張機能が必要に応じてユーザースクリプトをタブやフレームに挿入できるようにする
userScripts.execute()メソッドをサポートしました。userScripts.register()とは異なり、このメソッドは定義された順序で実行する複数のスクリプトソースを 1 回限り挿入できます (Firefox bug 1930776)。 - ブラウザーに組み込まれた Public Suffix List を使用して、ホスト名の登録可能ドメイン (eTLD+1) やパブリックサフィックスを拡張機能が判別できるようにする
publicSuffixAPI を追加しました。この API は 3 つの同期メソッドpublicSuffix.isKnownSuffix()、publicSuffix.getKnownSuffix()、publicSuffix.getDomain()を提供します (Firefox bug 1315558)。 - 新しい
runtime.getDocumentId()メソッド、webNavigationのイベントおよびメソッド、webRequestのイベント、スクリプトの挿入対象、メッセージング API を含む、さまざまな WebExtension API にdocumentIdを追加しました。サポートするすべてのイベントやメソッドの一覧、およびdocumentIdの使用に関するガイダンスについては Work with documentId をご覧ください (Firefox bug 1891478)。 - 拡張機能のコンテンツスクリプトで、
.wrappedJSObjectを使用せずにdocument.adoptedStyleSheetsおよびShadowRoot.adoptedStyleSheetsで構築済みのスタイルシートの読み取りおよび変更が可能になりました (Firefox bug 1751346)。 themeマニフェストキーのimages.additional_backgroundsプロパティで、画像の URL に加えて CSS グラデーションをサポートしました。新たにproperties.additional_backgrounds_sizeプロパティで、それぞれの追加背景アイテムのサイズを制御します (Firefox bug 2036647)。- Contextual identities (コンテナー) に関する変更:
- サポートされる色やアイコンの値を取得するための
contextualIdentities.getSupportedColors()およびcontextualIdentities.getSupportedIcons()メソッドを追加しました。これにより、それらの値をハードコーディングする必要がなくなりました (Firefox bug 2044712)。 - 使用可能な色を更新しました。
"turquoise"を"cyan"に改名、"toolbar"を"gray"に改名、および"violet"を追加しました。古い名前の"turquoise"および"toolbar"は、後方互換性のために受け入れます。色名称のハードコーディングを防ぐため、使用可能な色を取得するにはcontextualIdentities.getSupportedColors()を使用してください (Firefox bug 2044354)。
- サポートされる色やアイコンの値を取得するための
実験的なウェブ機能
以下の機能は Firefox 153 で導入しましたが、デフォルトで無効です。
これらを実験するには、about:config ページで適切な設定項目を検索して true に設定してください。
実験的機能 のページで、さらに多くの機能を確認できます。
-
JPEG XL 画像のサポート (Nightly):
image.jxl.enabledRust ベースの JPEG XL 画像デコーダーを、Nightly においてデフォルトで有効にしました (Firefox bug 2040074)。
-
ツリーカウント CSS 関数:
layout.css.tree-counting-functions.enabledsibling-count()およびsibling-index()関数をサポートしました。sibling-count()関数は、要素自体および兄弟要素の数を返します。sibling-index()関数は、兄弟要素に対するその要素のインデックス番号を返します。この値は0ではなく1から始まります (Firefox bug 2042063)。 -
外部リソースの属性を更新:
layout.css.link-parameters.enabledlink-parametersCSS プロパティおよびparam()CSS 関数をサポートしました。これは、env()CSS 関数で属性を設定している SVG などの外部リソースの属性をユーザーが更新することを可能にします。これにより、色やその他の値だけが異なる複数のバリエーションを作成するのではなく、ひとつの外部リソースを使用できるようになります (Firefox bug 2046153)。 -
CSS 基本図形で
farthest-cornerおよびclosest-cornerキーワードを使用可能 (Nightly):layout.css.ellipse-corners.enabledellipse()およびcircle()CSS 基本図形の半径の値を指定するために、farthest-cornerおよびclosest-cornerキーワードが使用可能になりました (Firefox bug 2037673)。