Firefox 101 for developers
このページでは、開発者に影響する Firefox 101 の変更点をまとめています。Firefox 101 は、米国時間 2022 年 5 月 31 日にリリースされました。
ウェブ開発者向けの変更点一覧
HTML
変更なし。
CSS
-
ウェブコンテンツに高いコントラスト (
more
) または低いコントラスト(less
) の設定をユーザーが指定しているかを検知するために使用できる、prefers-contrast
メディア特性をデフォルトで有効にしました。また、この特性の新しい値custom
で、コントラストのために使用する色のセットをユーザーが指定できます (Firefox バグ 1656363)。 -
3 種類の新たなビューポートの寸法である小 (
s
)、大 (l
)、動的 (d
) を導入しました。これらの新しい寸法で、既存の単位であるvh
、vw
、vmax
、vmin
に加えて新しい ビューポートのパーセント値による寸法 が追加されました。新しいビューポートのパーセント値による寸法の単位はsvh
、lvh
、dvh
、svw
、lvw
、dvw
、svmax
、lvmax
、dvmax
、svmin
、lvmin
、dvmin
です (Firefox バグ 1610815)。また、単位vb
およびvi
をデフォルトで有効にしました (Firefox バグ 1610815)。
JavaScript
変更なし。
API
DOM
-
moz
接頭辞がないHTMLMediaElement.preservesPitch
をサポートしました。mozPreservesPitch
はpreservesPitch
の別名になりましたが非推奨であり、将来のリリースで削除する予定です (Firefox バグ 1652950)。 -
HTMLInputElement.showPicker()
をサポートしました。button など他の要素のユーザーインターフェイスで、input 要素向けのピッカーを表示できます (Firefox バグ 1745005)。 -
DOMException
が シリアライズ可能なオブジェクト になりました。structuredClone()
でクローンを作ることや、postMessage()
を使用して workers との間でコピーすることができます (Firefox バグ 1561357)。 -
RTCRtpEncodingParameters.maxFramerate
で、(RTCPeerConnection.addTransceiver()
およびRTCRtpSender.setParameters()
で送信時のエンコードで使用する最大フレームレートを設定できるようになりました。 0 は有効なフレームレートの値ですが、Firefox は "フレームレート制限なし" と解釈しますので注意してください。 詳しくは Firefox バグ 1611957 をご覧ください。 -
Constructable stylesheets をサポートしました。Shadow DOM とともに使用する、再使用可能なスタイルシートをとても簡単に作成できます。 この更新には新しいスタイルシートを作成する
CSSStyleSheet()
コンストラクター や、スタイルシートに CSS 規則を追加するために使用できるCSSStyleSheet.replace()
およびCSSStyleSheet.replaceSync()
メソッドが含まれます。 詳しくは Firefox バグ 1520690 をご覧ください。
Media、WebRTC、Web Audio
- AV1 コーデックのパラメーター が、メディアサポートクエリーで適切に解析されるようになりました。
これは
MediaCapabilities.decodingInfo()
、HTMLMediaElement.canPlayType()
、MediaSource.isTypeSupported()
が、与えられたコーデックパラメーターに基づいた AV1 ソースの再生を正確に報告することを意味します。MediaCapabilities.decodingInfo()
も、AV1 動画の "効率的なデコード" を正確に報告するためにこの情報を使用します。 詳しくは Firefox バグ 1757861 をご覧ください。
WebDriver conformance (WebDriver BiDi, Marionette)
このリリースの Firefox から、WebDriver BiDi プロトコルがデフォルトで有効になりました。WebDriver BiDi セッションは WebDriver クラシック (geckodriver、Marionette) を使用して、新しい WebDriver セッションを生成するときに webSocketURL
capability を true
に設定することで要求できます。同じ機能に、BiDi クライアントが接続するための WebSocket エンドポイントも含まれています。
以下のコマンドやイベントを使用できます:
-
イベントをグローバルにサブスクライブするコマンド (
session.subscribe
) およびサブスクライブを解除するコマンド (session.unsubscribe
) の部分的な実装と、WebDriver クラシックを使用しないときに WebDriver BiDi セッションを直接作成する機能 (session.new
) を含む、session
モジュール を追加しました。 -
新しいタブやウィンドウを開くコマンド (
browsingContext.create
) や閉じるコマンド (browsingContext.close
)、開いている閲覧コンテキストを取得するコマンド (browsingContext.getTree
)、閲覧コンテキスト内でナビゲーションするコマンド (browsingContext.navigate
) を含むbrowsingContext
モジュール を追加しました。これらは、閲覧コンテキストが作成されたときのイベント (browsingContext.contextCreated
) もサポートします。 -
ログのイベント (
log.entryAdded
) をサポートするlog
モジュール を追加しました。
詳しくは、すべてのバグの一覧 をご覧ください。
アドオン開発者向けの変更点一覧
scripting
API を追加しました。スクリプトの実行、CSS の挿入と削除、コンテンツスクリプトの登録管理の機能を提供します (Firefox バグ 1687764)。この API は Manifest V3 拡張機能で使用可能であり、スクリプトの実行や CSS の挿入・削除の機能をtabs
API から引き継いでいます。action
API を追加しました。Manifest V3 拡張機能でbrowserAction
API の機能を引き継いでいます。"action"
マニフェストキーの追加も対応しています。browserAction
API および"action"
マニフェストキーは Manifest V2 拡張機能だけで使用可能であることに注意してください。"background"
マニフェストキーの"persistent"
を、設定項目による制御でfalse
に設定できます。Manifest V2 の設定項目はextensions.eventPages.enabled
、Manifest V3 の設定項目はextensions.manifestV3.enabled
です。"host_permissions"
マニフェストキーを追加しました。これは Manifest V3 拡張機能で使用できます。- Manifest V3 拡張機能向けのコンテンツスクリプト実行環境を変更しました:
- コンテンツスクリプトのオリジン間リクエストが、ホストの許可に依存できなくなりました。コンテンツスクリプトのオリジン間リクエストは、CORS で実行可能です。
content
オブジェクト (content.fetch
、content.XMLHttpRequest
、content.WebSocket
で提供される) が、コンテンツスクリプトの実行環境から削除されました。
過去のバージョン
- Firefox 100 for developers
- Firefox 99 for developers
- Firefox 98 for developers
- Firefox 97 for developers
- Firefox 96 for developers
- Firefox 95 for developers
- Firefox 94 for developers
- Firefox 93 for developers
- Firefox 92 for developers
- Firefox 91 for developers
- Firefox 90 for developers
- Firefox 89 for developers
- Firefox 88 for developers
- Firefox 87 for developers
- Firefox 86 for developers
- Firefox 85 for developers
- Firefox 84 for developers
- Firefox 83 for developers
- Firefox 82 for developers
- Firefox 81 for developers
- Firefox 80 for developers
- Firefox 79 for developers
- Firefox 78 for developers
- Firefox 77 for developers
- Firefox 76 for developers
- Firefox 75 for developers
- Firefox 74 for developers
- Firefox 73 for developers
- Firefox 72 for developers
- Firefox 71 for developers
- Firefox 70 for developers