サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Pixel 9
www.fxsitecompat.dev
2012 年 10 月 9 日、私たちの最初のドキュメントがオンラインに登場しました。この 8 年間で 67 回以上の Firefox リリースのため 878 件の互換性情報を投稿してきましたが、このたびプロジェクトを終了することを決定しました。このような信じがたい旅ができたことを皆さんに感謝します! 何らかの形で少しでも皆さんのお役に立てたのではないかと思います。
リリース: Firefox 79 カテゴリー: DOM, HTML, プライバシー & セキュリティ 概要Firefox 79 以降、target="_blank" を伴った <a> や <area> 要素は、現行の HTML 仕様 に従い、rel 属性が設定されていない限り暗黙的に rel="noopener" を適用します。noopener リンクタイプは新たに開かれたウィンドウ内の window.opener を null とすることで、この DOM プロパティが信頼できない第三者のサイトによって悪用されるのを防ぎます。必要な場合は、rel="opener" を明示的に設定することで挙動を反転させられます。 Apple は 2019 年 3 月公開の Safari 12.1 で最初にこの変更を行いました。Firefox では、Firefox 65 以降の Nightly と早期 Be
The support for the Transport Layer Security (TLS) protocol’s version 1.0 and 1.1, deprecated since Firefox 71, has been removed from all the channels as of Firefox 74 78. All major browsers are going to drop the support for the older versions of TLS in early 2020. Make sure to enable TLS 1.2 or 1.3 on your web server, otherwise Firefox will show the Secure Connection Failed error page to prevent
ローカルに保存された悪質な HTML コンテンツが同じディレクトリーにある他のファイルへアクセスするのを防ぐため、Firefox 68 で 同一オリジンポリシー が強化されました。これはあなた自身のマシン上で直接 file:// URL を通じてあなたのサイトをテストしていて、例えば別のファイルにスクリプトを含めていたり <iframe> を埋め込んでいたりした場合に問題となる可能性があります。 単純な自己完結型の HTML ファイルは今後も表示できるかもしれませんが、構成ファイルを伴ったサイトをテストしたい場合はローカルサーバーを立ち上げることを強くお勧めします。MAMP や XAMPP といった簡単に使えるツールがありますし、macOS には Apache サーバーが内蔵されています。 更新: この変更は、ウェブフォント、Worker、XSLT など、他の様々なものにも影響を与えていま
window.localStorage は従来、ユーザーのプライバシー設定によって使用できない場合、具体的には Cookie が無効となっている際に SecurityError 例外を投げていました。Firefox 67 以降、このプロパティはそうした場合単に null となり、JavaScript に適切な try-catch 処理が書かれていないため一部のサイトが読み込まれない問題を解消します。 // なお、window.localStorage が null となる場合、 // これは引き続き TypeError を投げます window.localStorage.setItem(key, value); // そのため以下のように書く必要があります。 const storage = window.localStorage; if (storage) { // ストレージを使用 st
Starting with Firefox 66, timers added with the window.setTimeout or window.setInterval method during page load will be given a low priority and deferred until an idle time is available or the loading is complete. While this change aims at improving the performance of complex web applications like Google Docs, unexpected race conditions could occur if the initialization code is not designed proper
Firefox 66 以降、ページ読み込み中に window.setTimeout や window.setInterval メソッドで追加されたタイマーは低い優先度をつけられ、空き時間が得られるか読み込みが完了するまで先送りされるようになります。 この変更は Google Docs のような複雑なウェブアプリケーションのパフォーマンス向上を意図したものですが、初期化コードが適切に設計されていない場合、予期せぬ競合状態が起きる可能性があります。Best Buy のサイトで 1 件のリグレッションが報告され、後にサイト側で修正されましたが、Mozilla の開発者によれば、この問題はおそらくリソースアクセス順が変わったことが原因と思われます。 ウェブ上のタイマーはそれほど正確ではないということを忘れずにいましょう。ブラウザーのタブが背面にある場合など、様々な理由で 指定したよりも長く掛かる場
Firefox 65 で、複数のポップアップウィンドウが同時に開かれるのを防ぐため、ポップアップブロッカーが改良されました。window.open メソッドの呼び出しはイベントごとに 1 回のみ許容され、もし後続の呼び出しが行われた場合はブラウザーによってブロックされます。より良いユーザー体験のためには、いずれにしても複数ポップアップやタブを開くことは避けるべきでしょう。
Firefox 65 で Google が開発した WebP 画像形式 への対応が追加されました。Chrome と Opera は 5 年以上対応していましたが、Mozilla はこの新形式に対するいくつかの懸念から初期の実装作業を中止していました。しかし、Microsoft Edge が最近になって対応したことや、WebP 画像しか配信せず正しく表示されないサイトの数が増え続けていることから、Firefox の開発者は態度を変えざるを得ませんでした。 あなたのサイトでブラウザー判別に応じて異なる画像形式を用いている場合は、そのコードを更新して Firefox 65 以降に WebP が配信されるようにしてください。Firefox は画像の HTTP Accept リクエストヘッダーとして image/webp,*/* を送信しますが、WebP を配信するかどうか決定するにはこちらの方法が
Service Worker API と Push API は、ブラウザー内での複数コンテンツプロセスへ適切に対応するための設計変更が続いていることから、Firefox 45、Firefox 52 ESR と同様に Firefox 60 延長サポート版 (ESR) 上でも無効化されることになりました。Firefox ESR は主に大企業や大学内での一括導入向けです。これらの API は通常の Release チャンネルでは使用可能です。 Firefox サイト互換性ワーキンググループ Copyright © 2020 Kohei Yoshino and individual contributors. Mozilla と Firefox は Mozilla Foundation の商標です。このイニシアチブは Mozilla とは無関係です。 English
UI Events 仕様 や他のブラウザーの挙動に合わせるため、Firefox は、インプットメソッドエディター (IME) による変換中にも keydown、keyup 両イベントの発生を行うようにしました。IME ヘルパーアプリケーションは、中国、日本、韓国、台湾 (CJKT) の人たちによって文字入力欄に母国語のマルチバイト文字を入力するために使われます。 従来、例えば日本語で「絵」と入力したい場合、以下のようなイベントが発生していました。 keydown { isComposing: false, key: "e", keyCode: 69 } compositionstart { data: "" } compositionupdate { data: "え" } input { isComposing: true } compositionupdate { data: "絵"
Firefox 61 以降、window、document、document.body 上の touchstart および touchmove イベントリスナーは標準でパッシブ (無抵抗) として扱われます。つまり、addEventListener の passive オプションを明示的に false に設定しない限り、それらのイベントは preventDefault() を使ってキャンセルできなくなります。 このスクロール介入は、Google Developers サイトの記事 で説明されている通り、モバイル端末上でのスクロールパフォーマンス向上を目的としたものです。2017 年 1 月公開の Chrome 56 が既にこの新しい挙動を採用していることから、互換性リスクは低いはずです。 更新: Firefox 70 で同様の変更が ontouchstart と ontouchmove イ
Firefox は従来、Basic HTTP 認証リクエスト用のユーザー名とパスワードに ISO-8859-1 文字エンコーディングを採用していました。Firefox 59 以降、フランス語のアクセント記号付き文字など非 ASCII 文字が適切にエンコードされるよう、Authorization ヘッダーに UTF-8 が採用されます。 あなたのサイトがユーザーの認証情報に英数字や一般的な記号のみを許容している場合、この変更は何ら問題となりません。しかし、非 ASCII のユーザー名やパスワードを受け入れているサイトは ISO-8859-1 と UTF-8 の両方に対応するよう更新する必要があり、さもないとユーザーのログインに問題が生じる可能性があります。 Google Chrome は既に UTF-8 を採用しているため、RFC 7617 で指摘されているように、人気のアプリケーションフレ
UI Events 仕様 や他のブラウザーの挙動に合わせるため、Firefox は近い将来、非表示キーや非表示キーの組み合わせに対して keypress イベントを発生させないようにします。 非表示キー とは、Home、End、Tab、Escape、Backspace、Page Down、矢印といった機能キーのことです。非表示キーの組み合わせには、Ctrl+A、Alt+G、Command+Shift+M といったものが含まれます。ウェブ開発者は代わりに keydown イベントを使ってそれらのキーを扱う必要があります。 例外は Enter キーです。修飾キーなしで Enter を押した場合、あるいは Shift+Enter や Ctrl+Enter は、これまで通り keypress イベントを発生させます。これは現在の仕様においては正しくありませんが、他のブラウザーと互換性があります。
Mozilla は、他の複数のブラウザーベンダーとともに、Symantec によって発行されたすべての TLS サーバー証明書への信頼を無効化する決定を下しました。これは、広範な調査 と議論を通じて発見された不適切な認証局運営に起因するものです。Firefox の 今後の信頼無効化措置 は Google Chrome と歩調を合わせており、GeoTrust、RapidSSL、Thawte、Verisign といったすべての Symantec ブランドに適用されます。 2018 年 5 月 9 日公開の Firefox 60 では、2016 年 6 月より前に発行された Symantec 証明書を使ったサイトに対して「安全でない接続」のエラーページが表示されます 2018 年 10 月 16 日公開の Firefox 63 では、Symantec のすべてのルート証明書が削除され、発行日に関
標準の Array.prototype.values メソッド対応が Firefox 60 で再度有効化されました。これは Firefox 48 で実装されましたが、いくつかの互換性問題 が報告されたため Nightly チャンネル以外では無効化されていました。 Microsoft Edge と Apple Safari は既にこの機能を提供しています。今年 4 月公開の Google Chrome 66 でも再度有効化される予定です。不具合を避けるため、あなたのサイトにこのメソッドの独自実装がないことを確認してください。
On October 9, 2012, our first document appeared online. 8 years later, after posting 878 site compatibility notes for 67+ Firefox releases, we have decided to close our doors. Thank y’all for the incredible journey! Hope we could have helped your life in any way.
Firefox 8 で導入された HTML5 コンテキストメニュー への対応は近々削除されます。他のブラウザーベンダーが関心を示さなかったため、この機能は既に HTML 仕様から削除されました。現在 Firefox が <menu>、<menuitem> 要素や contextmenu グローバル属性を実装している唯一のブラウザーとなっています。 必要であれば、Google Drive など一部のリッチウェブアプリケーションに見られるように、独自のコンテキストメニューを代わりに作成できます。WAI-ARIA 標準が アクセシブルなメニュー を作成する方法を提供しており、これを使用することを強くお勧めします。 これをテストするには? この変更は当プロジェクト提供の Firefox 開発者ツール拡張機能 に含まれている互換性チェッカーでテスト可能です。今すぐインストールしましょう! 参考資料
Firefox で現在進行中の NPAPI プラグイン廃止 の一環として、Flash コンテンツは Firefox Nightly の初期設定で「クリックして有効化」となりました。この変更は、SharedArrayBuffer、WebAssembly、WebGL 2.0 といった高度な標準技術がいくつか実装され、一般に使用できるようになったことを踏まえて行われました。 今のところ、Firefox 55 の Beta、Release 両チャンネルのユーザーへ段階的にこの変更を展開していく予定です。ウェブコンテンツ提供者は、最良のユーザー体験を提供するため、Flash 依存をやめるための明確な計画を立てるべきです。 更新: この変更は 9 月 20 日時点ですべての Firefox 55 ユーザーへ展開されました。
Firefox では、リッチテキストエディター 上で Enter キーを押すと <br> 要素が挿入されます。一方、Internet Explorer では <p> が、Google Chrome では <div> が、それぞれ追加されます。多くの議論が重ねられた結果、Firefox 60 でこの挙動が Chrome に合わせる形で変更され、<div> が新たな既定のセパレーターとして使用されます。 「Firefox」と入力して「Fire」と「fox」の間で Enter を押すと、結果として得られる HTML は Fire<br>fox ではなく <div>Fire</div><div>fox</div> となります。 この挙動は、バージョン 55 以降の Firefox Nightly と早期 Beta/DevEdition では既に初期設定で有効となっていますが、execCommand
Firefox 55 Nightly と Firefox 57 のすべてのチャンネルで Windows 上のブラウザー既定日本語フォントが変更され、ウェブページにモダンな印象が与えられるようになりました。サンセリフ体はMS Pゴシックから メイリオ に、セリフ体はMS P明朝から游明朝になります。等幅フォントはMS ゴシックのままです。メイリオに斜体はありませんが、Firefox はハックを追加することで、スタイルが適用された場合には斜体となるようにしています。
レスポンスタイプ が blob の大きなデータを XMLHttpRequest で取得した結果、破損したファイルが返ってしまう場合があるというリグレッションが Firefox 52 で発生しました。この問題は競合状態によって 10 MB 以上のファイルについて発生するようで、バグの報告者によれば、レスポンスタイプを moz-blob に設定することで回避可能です。Mozilla 開発者が解決策を模索しています。 更新: この問題は Firefox 53 と Firefox ESR 52.1 で修正されました。
opacity プロパティが transform や visibility といった他の特定のプロパティと同時に変更された場合、CSS トランジション が指定通りに適用されないというリグレッションが Firefox 52 で発生しました。影響を受ける要素はトランジション実行中に点滅したり、直後に消えたりする可能性があります。 更新: このバグは Firefox 52.0.2 で修正されました。
Firefox 55 以降、window 上の scrollX、scrollY 両プロパティとそれらのエイリアスである pageXOffset、pageYOffset は、getBoundingClientRect メソッドが返す値と同様に、サブピクセル精度を持つ浮動小数点数を返します。必要であれば、Math.round メソッドを使って、それらを従来の整数値へキャストしてください。
Firefox 54 以降、http:、http://、ftp:、ftp:// といったホスト名が指定されていない URL は、本来そうであるように、不正な URL として扱われるようになりました。つまり、以下の JavaScript コードは今後 TypeError を投げるようになります。
Firefox 54 以降、すべての Firefox チャンネルおよびプラットフォーム上で、Event.prototype.timeStamp プロパティは、エポック時間からのミリ秒単位でしかなかった整数型 DOMTimeStamp 値に代わり、整数部にミリ秒、小数部にマイクロ秒を含む、ページ読み込み からの浮動小数点数型 DOMHighResTimeStamp 値を返します。 この変更は、Windows、Linux、macOS 版の Firefox Nightly と Developer Edition では既に行われています。Android での実装も完了したことから、Beta、Release 両チャンネルでも初期設定で高精度タイムスタンプが有効となります。 Google Chrome では 2016 年 3 月公開の Chrome 49 以降有効になっていることから、現時点での互換性
Service Worker API と Push API は、ブラウザー内での複数のコンテンツプロセスに対応するための大規模な設計変更が予定されていることから、Firefox 52 延長サポート版 (ESR) 上では Firefox 45 ESR と同様に無効化されることになりました。Firefox 52 ESR は主に、法人ユーザーと、Firefox 53 以降へアップグレードできない Windows XP/Vista ユーザー 向けです。これらの API は通常の Release チャンネルでは使用可能です。 更新: これらの API は引き続き Firefox 60 ESR でも無効化されています. Firefox サイト互換性ワーキンググループ Copyright © 2020 Kohei Yoshino and individual contributors. Mozilla
開発者間の議論の結果、Firefox とその他のブラウザーは、URL.createObjectURL 静的メソッドのオブジェクト引数に MediaStream を受け入れることを近々中止することになりました。Firefox 54 では、そのようなコードが見つかった場合、コンソールに廃止予定の警告が表示されます。 仕様に書かれている例 が示す通り、<video> あるいは <audio> 要素上に MediaStream を設定するには、HTMLMediaElement.prototype.srcObject プロパティを使ってください。
JavaScript 1.6 で導入された非標準で Firefox 独自の String 汎用メソッド は廃止予定となり、近い将来削除されることとなりました。これらの汎用・静的メソッドには以下のものが含まれます。 String.charAt String.charCodeAt String.concat String.endsWith String.includes String.indexOf String.lastIndexOf String.localeCompare String.match String.normalize String.replace String.search String.slice String.split String.startsWith String.substr String.substring String.toLocaleLowerCase S
次のページ
このページを最初にブックマークしてみませんか?
『www.fxsitecompat.dev』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く