Firefox 59 for developers
Firefox 59 は、米国時間 2018 年 3 月 13 日にリリースされました。このページでは、開発者に影響する Firefox 59 の変更点をまとめています。
ウェブ開発者向けの変更点一覧
開発者ツール
- ネットワークモニター の応答タブで、応答が HTML である場合に 描画された HTML のプレビュー を表示するようになりました (バグ 1353319)。
- ストレージインスペクターで表示する Cookie の情報 (Cookie をご覧ください) で、それぞれの Cookie が same-site 状態であるかを示す sameSite 列を追加しました (バグ 1298370)。
- 定規 ツールで、ビューポートの現在の寸法を示す情報を表示するようになりました (バグ 1402633)。
- レスポンシブデザインモード で、カーソルキーを使用して画面の寸法を設定できるようにになりました (バグ 1421663)。詳しくは 画面のサイズを設定する をご覧ください。
- ネットワークモニター の ヘッダー タブに表示する生ヘッダーで、応答のステータスコードを表示するようになりました (バグ 1419401)。
HTML
<textarea>
要素のautocomplete
属性を実装しました。要素でフォームのオートフィル機能を有効化または無効化できます。
CSS
overscroll-behavior
プロパティと、このプロパティに関係するロングハンドプロパティであるoverscroll-behavior-x
およびoverscroll-behavior-y
を実装しました (バグ 951793)。また、すべてのリリースで、デフォルトで有効化しました (バグ 1428879)。- "unusual elements" (置換要素のように、CSS のボックスの概念に従って描画されない要素) で
display
の値にcontents
を指定したときの動作を、仕様書に従って更新しました (バグ 1427292)。仕様で定められた正確な動作については、Appendix B: Effects of display: contents on Unusual Elements をご覧ください。 position
のsticky
を、適切な HTML テーブル の部品 (例えば<th>
要素) でサポートしました (バグ 975644)。<color>
値 (rgb()
,rgba()
,hsl()
,hsla()
) でcalc()
をサポートしました (バグ 984021)。- メディアクエリー の値で
calc()
をサポートしました (バグ 1396057)。 @document
@-規則の使用を、ユーザースタイルシートと UA スタイルシートに限定しました (バグ 1035091)。font-optical-sizing
プロパティを実装しました (バグ 1435692)。
SVG
変更なし。
JavaScript
変更なし。
API
新規 API
PointerEvents
を、デスクトップ版 Firefox で有効化しました (バグ 1411467)。
DOM
EventTarget()
コンストラクターを実装しました (バグ 1379688)。Response()
コンストラクターが、仕様書に従ってbody
引数でnull
値を受け入れるようになりました (バグ 1303025)。
DOM イベント
Event.composedPath()
メソッドを実装しました (バグ 1412775)。
Service workers
- 別のブラウザープロセスで、Service worker Clients API を発見および通信できるようになりました (バグ 1293277)。
- 入れ子の about:blank や about:srcdoc のインラインフレームが、親で制御している service worker を継承するようになりました。これは バグ 1293277 および バグ 1426979 で修正しました。
- service worker が
Response
をFetchEvent.respondWith()
に提供するときにResponse.url
(en-US) の値が、インターセプトされたネットワークに最終的に解決された URL として伝播しないようになりました。以前は、代わりにFetchEvent.request.url
を使用していました。これは、例えば service worker がスタイルシートや worker スクリプトをインターセプトする場合に提供されるResponse.url
が、関連する@import
やimportScripts()
のサブリソースの解決に使用されるということです (バグ 1222008)。 FetchEvent.request.mode
が"same-origin"
であり、Response.type
(en-US) に"cors"
を与えた場合に、FetchEvent.respondWith()
がネットワークエラーを発生させるようになりました (バグ 1222008)。
メディアと WebRTC
MediaStreamTrack
のMediaStreamTrack.muted
プロパティ、およびmute
イベントとunmute
イベント、さらにこれに対応するイベントハンドラーであるonmute
とonunmute
を実装しました。トラックのmuted
状態は、トラックが今のところメディアデータを提供できないことを示します。注記: トラックのmuted
状態は、一般的に考えられているトラックのミュートやミュート解除として役に立つものではありません。代わりにenabled
プロパティを使用します。enabled
をfalse
に設定すると、トラックは空のフレームだけを出力します。- Android 版 Firefox 59 で Apple の HTTPS Live Streaming (HLS) を、音声および映像の両方でサポートしました。この非標準プロトコルは、モバイル環境においてモバイルストリーミングのためにこのプロトコルを必要とするサイトの互換性を向上するためにサポートしました。現在、デスクトップ版 Firefox にこのプロトコルを実装する予定はありません。
- それぞれの RTP ストリームのソースの情報を提供するため、
RTCRtpReceiver
(en-US) のgetContributingSources()
(en-US) およびgetSynchronizationSources()
(en-US) メソッドを実装しました。ただし、公開前に仕様書が変更されましたので、デフォルトで設定項目media.peerconnection.rtpsourcesapi.enable
によってこれらを無効化しました (バグ 1363667, バグ 1430213, バグ 1433236)。 - Firefox の WebRTC 実装でトランシーバーをサポートしましたので、
RTCRtpTransceiver
(en-US) インターフェイスを実装しました。また、RTCPeerConnection
やほかのインターフェイスを、最新の仕様書に従ってこれらを使用使用するように更新しました。 RTCPeerConnection.addTransceiver()
(en-US) メソッドを追加しました。さらに、要求に従ってトランシーバーを作成するように、addTrack()
(en-US) の動作を更新しました。- Firefox 58 で WebVTT のリージョンを実装しましたが、デフォルトで無効化していました。これをデフォルトで有効化しました (バグ 1415805)。
- WebVTT ファイルで同じ行にすべての設定を並べる形式ではなく、1 行ごとにひとつの設定を並べる形式の
REGION
定義ブロックを Firefox でサポートしました (バグ 1415821)。
Canvas と WebGL
変更なし。
CSSOM
CSSNamespaceRule
(en-US) インターフェイスと、namespaceURL
およびprefix
プロパティを実装しました (バグ 1326514)。
HTTP
変更なし。
セキュリティ
data:
URI へのトップナビゲーションはブロックされます(バグ 1401895)。詳しくは Blocking Top-Level Navigations to data URLs for Firefox 59 をご覧ください。X-Frame-Options
ヘッダーのSAMEORIGIN
ディレクティブが、トップレベルのインラインフレームが同一オリジンであるかだけでなく、すべての祖先も同様であるかを確認するようになりました (バグ 725490)。- 異なるオリジンから現在のドキュメントに読み込まれる画像リソースが、HTTP 認証ダイアログを表示させることができなくなりました。 (バグ 1423146)。
- ほかのブラウザーに合わせるため、および バグ 1419658 で説明されている潜在的な問題を避けるため、HTTP 認証でユーザー名やパスワードに (
ISO-8859-1
ではなく)utf-8
エンコーディングを使用するようになりました。 - HSTS プリロードリストは Google によって毎日更新されています。いつもの更新であれば注意する必要はないのですが、このリリースから新しい TLD が追加されました。このうち具体的に注目したいのが
.app
と.dev
です。これらの新しい TLD を知らず、ローカルの開発環境に使用した場合、予期しない挙動となるかもしれません。なお、ローカルでの開発には予約済み TLD を使うべきとされています。
プラグイン
変更なし。
その他
変更なし。
ウェブプラットフォームから廃止
HTML
<script>
要素のtype
属性の非標準パラメーターであるversion
(例えばtype="application/javascript;version=1.8"
) を削除しました (バグ 1428745)。
CSS
- 独自仕様の
mozmm
<length>
単位を削除しました (バグ 1416564)。 - 独自仕様の
-moz-border-top-colors
、-moz-border-right-colors
、-moz-border-bottom-colors
、-moz-border-left-colors
(en-US) プロパティを、chrome コードのみ使用するように制限しました (バグ 1417200)。
JavaScript
- 非標準の 条件付き catch 節 を削除しました (バグ 1228841)。
API
- 非標準の
Event.getPreventDefault()
メソッドを削除しました。Event
でpreventDefault()
が呼び出されたかを判断するには、代わりにEvent.defaultPrevented
プロパティを使用します。 - 標準の Notifications API が好ましいため、独自仕様の
Navigator.mozNotification
プロパティとDesktopNotification
インターフェイスを削除しました (バグ 952453)。 - 独自仕様の
window.external.addSearchEngine()
メソッドを削除しました (バグ 862147)。詳しくはWindow.sidebar
もご覧ください。 - Firefox 限定の非標準プロパティである
HTMLMediaElement
propertymozAutoplayEnabled
を削除しました。
SVG
- SMIL の
accessKey
機能のサポートを廃止しました (バグ 1423098)。
その他
- 非標準の
pcast:
およびfeed:
プロトコルのサポートを廃止しました (バグ 1420622)。
アドオン開発者と Mozilla 開発者向けの変更点
WebExtensions
- theme の更新:
- 新しいプロパティ:
colors.background_tab_text
,colors.toolbar_field_border
- すべての色関連プロパティで、Chrome 形式の配列と CSS の色の値の両方をサポートしました。
- 新しいプロパティ:
- 新しい ブラウザー設定:
- 新しい
tabs
の API: contextMenus
API で "bookmark" コンテキスト をサポートしました。- 新しい
contentScripts
API で、ランタイムがコンテンツスクリプトを登録できます。 - 新しい
pageAction
,browserAction
,SidebarAction
の API:browserAction/pageAction/sidebarAction.set*
関数で、変更を元に戻すためのnull
をサポートしました。browserAction.isEnabled() (en-US)
,pageAction.isShown() (en-US)
,sidebarAction.isOpen() (en-US)
関数。
- デフォルトでページアクションを表示するための、
page_action
の新しいオプション。 protocol_handers
の新しい値:- Secure Scuttlebutt 通信のための "ssb"
- DATproject のための "dat"
- IPFS のための "ipfs", "ipns", "dweb"
privacy.websites (en-US)
の新しい設定 "cookieConfig"。cookies
API で ファーストパーティ分離 をサポート。webRequest
の新しいオプションであるupgradeToSecure
。
関連情報
過去のバージョン
- Firefox 58 for developers
- Firefox 57 for developers
- Firefox 56 for developers
- Firefox 55 for developers
- Firefox 54 for developers
- Firefox 53 for developers
- Firefox 52 for developers
- Firefox 51 for developers
- Firefox 50 for developers
- Firefox 49 for developers
- Firefox 48 for developers
- Firefox 47 for developers
- Firefox 46 for developers
- Firefox 45 for developers
- Firefox 44 for developers
- Firefox 43 for developers
- Firefox 42 for developers
- Firefox 41 for developers
- Firefox 40 for developers
- Firefox 39 for developers
- Firefox 38 for developers
- Firefox 37 for developers
- Firefox 36 for developers
- Firefox 35 for developers
- Firefox 34 for developers
- Firefox 33 for developers
- Firefox 32 for developers
- Firefox 31 for developers
- Firefox 30 for developers
- Firefox 29 for developers
- Firefox 28 for developers