スタイルシートで文字列を省略し、・・・を付ける方法

SE風味

2009年07月17日 02:38

Webで使えるテクニック!Webで困ったときのメモ帳より、CSSだけで文字列を省略して「・・・」を付けて表示する方法というのがありました。
http://ameblo.jp/linking/entry-10268808742.html

そして、その元記事はこちら
FirefoxとSafariのCSS対応--ボックスに収まらないコンテンツの表示方法
http://builder.japan.zdnet.com/sp/css-firefox-safari/story/0,3800083423,20378240-2,00.htm

要は、
text-overflow: ellipsis;
を使うのだが、文字数ではなく、幅で指定できるので、これは使えそうなテクニックだ。

と思ったのだが、
text-overflowプロパティに対応しているのは、IE6以上と、Safari、Opera とのこと。

・・・ Firefox や Chrome は?

上記ページにあったサンプルをつかって、実際の表示を確認したところ、
予想通り、Chrome は ・・・ が表示されたが、Firefox では、表示されませんでした。

・・・残念!

一応、実例としては、
Safariでは-webkit-text-overflow、Operaでは-o-text-overflowと記述するので、
実際にCSSを書くと、以下のようになるそうです(border なんかはいらないだろうけど)

div	{
overflow: hidden;
text-overflow: ellipsis; -webkit-text-overflow: ellipsis;
-o-text-overflow: ellipsis;
white-space: nowrap;
width: 300px;
border: solid 1px orange;
}


関連記事