いや、 HTML5 に限った話ではないようだが・・・、例えば chrome に比べ、 firefox はずっと広い幅になってしまうようだ。
ぱっと見た感じ、 chrome では半角文字の幅が基準に使用され、 firefox では全角文字の幅が基準に使用されているように見える。
ともあれ、結果として、特定ブラウザ上で表示を合わせても別のブラウザでは表示が崩れてしまう。なんとかするには cols を使用せず css で width を指定することになる。
だがそうすると px で指定することになるので textarea 内で使用されるフォントが可変だった場合に、現在のフォントの幅などに連動できなくなる。親要素に対する % 指定もできるようだが、自分の環境では px 指定でないと動作しなかった。自分の環境での css の定義され方に影響されているのかも知れないが、ぱっと見て分かるようなものではなかった。
textarea の cols 要素って文字数を指定する要素じゃないのか?なんのためにあるの?この要素は「 textarea に現在設定されているフォントの幅を基準に何文字分の幅かを指定する」と定義されるのが正しい気がするが、フォントの設定は css の領分なので、 html 側からその設定内容をそのまま利用することは出来ない気がするので、そもそも cols という要素は「あるべき定義」が不可能な存在である気がする。
だがしかし、こんな誰もが必ず使用を迫られるような要素の動作がブラウザ間でばっらばらなのは、とてもすごく困るのだが・・・。
この記事のリンク用URL&トラックバックURL : https://red-souls.jp/ichounoki/rnote/dev/20190829_200516853019.htm