ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

inputタグの幅は、sizeではなくCSSで指定しよう

Mozilla Firefoxが40.0.2にアップデートされた後にあるサイトを見たら、テキスト入力欄の幅が広くなっていて、レイアウトがおかしくなっていました。
ソースコードを見てみると、

<input type="text" size="30" name="val1">

と指定されていました。

Firefoxのバージョンがあがって解釈が変わったんだと判断し、Google Chromeで表示した場合のピクセル数を参考にして

<input type="text" style="width:250px;" name="val1">

に修正しました。

f:id:AJYA:20150819060019j:plain
photo credit: Mozilla Booth via photopin (license)

バグ修正による影響を受けたらしい

こちらの記事によると、日本語版のWindows 7Firefox 40以降で発生する現象のようです。
Windows 7を利用するユーザーはまだ多いだろうし、ブラウザのバージョンを上げないでというのも無理な話だと思います。

ブラウザ間で解釈が異なって当たり前のsizeで指定するのではなく、CSSで指定していれば発生しなかった現象です。
かなり前からのソースコードを引き継いでいたために、現象が発生しました。