リグレッション MSThemeCompatibleno の場合にチェックボックスやラジオボタンが表示されません

公開日: | カテゴリー: HTML

概要

Firefox 54 で HTML チェックボックスやラジオボタンの描画方法が変更され、-moz-appearance:none によるスタイル指定が <input type="radio"><input type="checkbox"> に対して行われた場合に 置換要素 となってしまう問題が解消されました。これにより、ウェブ開発者はより柔軟にフォームコントロールをデザインできるようになります。

しかしながら、ドキュメントの <head> 内に <meta http-equiv="MSThemeCompatible" content="no"> が存在するとそれらの要素が見えなくなってしまうという、思わぬ副作用がこの変更によってもたらされました。

MSDN の記事 によれば、当該の <meta> タグは Windows XP 向け Internet Explorer 上で「ドキュメントのテーマ対応を無効化する」もので、Firefox も長いこと部分的な互換性を保ってきました。一方、Google Chrome や Microsoft Edge など他のどのブラウザーもこの非標準の無名機能に対応していません。

問題となった描画リグレッションは Firefox 55 で MSThemeCompatible 対応を廃止することで解決されました。ウェブ開発者の皆さんは単純にサイトからこの時代遅れとなった <meta> タグを取り除くことで問題を回避できます。

参考資料