@font-faceのブラウザ別挙動を調べてみる。

PC版へ 2010年02月20日
サーバに置いたフォントをWebページの表示に使うことができる「Webfonts」機能ですが、ブラウザへの実装が始まったとはいえ、まだまだ微妙です。手元にあるブラウザで挙動を調べてみた。
ちなみにCSSはこんな風に書きました。みかちゃんフォント使用。

★@font-face指定が効くかどうか。

★フォントのダウンロードが終了するまでの挙動。

うーん。全てがFirefoxのように動いてくれんかなぁ。

★ローカルPCに当該フォントがインストールされていた場合。

ということで、OperaIEはちょっと問題外っぽい。Operaは英語フォントだとうまく動作するのですが、日本語フォントだと駄目。うちではOperaの公式デモページもちゃんと表示できないので、これ以上追求しません。フォント周りの特別な設定が必要なんだろうか。IEの方も、設定をいじれば何とかなるのかなぁ。

それから、フォントがダウンロードされるまでのタイムラグ。
Firefoxは代替フォントで暫定表示してくれるのでありがたいのですが、SafariChromeはフォントのダウンロードが完了するまで描画を待ちます。フォントは2MBくらいあるので、数秒間ブランクが空いてしまうのは辛いですね。

各ブラウザでWebfonts指定を含むページをロードした時に、どの時点でonloadイベントが発生するかも調べてみました。bodyタグに onload="alert( 'load completed' );" を付け加えるだけ。

うーむ。SafariChromeで、「フォントのダウンロードが完了するまでは何かを暫定表示→フォントが準備できたら表示切り替え」というのをonloadイベントを検知することでやれないかと思ったのですが、その手法は無理っぽいですねぇ。

現時点では、全てのブラウザに対応させるのは相当面倒くさそうですなぁ。

お試しサンプルページはこちら。ご自身で挙動を確かめてみてください。
  → 日本語フォントをWebfontsに指定したページサンプル
  → 英語フォントをWebfontsに指定したページサンプル


関連記事

コメント

現在、コメント機能は停止しています。