2011-06-25

text-overflowの仕様が複雑になってる話

Firefox (7ね) でもtext-overflow: ellipsisが実装されたわけだけど、text-overflowのスペックがcss-uiに移った関係上、Tantekがいろいろなことを細かく追加してくれてる。それらの話は勝手にTantekが書いたわけではなくて、いくつかの議論が過去にあったことをちゃんと反映したということが事実でもある。

でさ、IE9が出たときに一番感心した点でこのtext-overflowの実装がちゃんと最新の話を追従してきてたというところ。最新の仕様でちゃんと定義されたものの一つとして、スクロール時の動作ってのがあるんだ。

<div style="width: 5em; text-overflow: ellipsis; overflow: scroll;">
  AWESOME
</div>

こんなCSSがあるとすると、スクロール可能な状態でかつ省略文字(...)がつく状態になる。で、スクロールしたらどうなるかというと、ちゃんとスクロールに追従して、"..."を表示する場所を変えなければいけないってことになったんだ。で、これを最初にちゃんと実装したのがIE9だった。で、複雑すぎるテストケース (rtlにしてみるとかいろいろあるよね!) を書いてみてもIE9はまともに実装されて感心した。

ちなみに、ちゃんとOpera 11.50ではこの仕様にちゃんと追従してて感心した(けど、rtlになったとたん破綻する話は相変わらずだったけどね)。

これFirefox 7でもちゃんと実装してあるんで、最新仕様に追従してないのはWebKit系だけっていうことになるんだけど、これってもうWebKitの最新版で追従できてたっけ?

0 件のコメント: