メモログ

塵が積もって山とならないメモのログ

YSLOW 勉強 : 7: Avoid CSS Expressions

rules for high performance web sitesの七つ目。CSS Expressions の使用を避けよう。CSS Expressionsとは、background-color: expression( (new Date()).getHours()%2 ? “#B8D4FF” : “#F08A00” ); (2で割れたら#B8D4FF、割れなかったらF08A00)というように、CSSの指定をダイナミックに行えるIEの独自拡張のこと。 便利な機能だけど、expressionsの判定がマウスを動かしたりするだけで行われてしまうため、何千回も判定を繰り返す可能性がある(パフォーマンスにも影響がある)。

📖 続きを読む

YSLOW 勉強 : 6: Move Scripts to the Bottom

rules for high performance web sitesの六つ目。スクリプトはできるだけ(HTMLの)下に移動させよう。これも5と同じくレンダリングに関わる話で、CSSは読み込みきらないとレンダリングが始まらなかったのですが、スクリプト(javascript)の場合は読み込み始めると、そこから下に記述されている内容のレンダリングがストップしてしまうので、できるだけ下に置く方がいい。

📖 続きを読む

YSLOW 勉強 : 5: Put CSS at the Top

rules for high performance web sitesの五つ目。スタイルシートはheadタグの中で指定しよう、という話。なんか普通の使い方のような気がするのですが・・話の主旨はスタイルシートが最初の方に読み込まれておけば、ページのレンダリングが暫時的にすすんでいくから、ページを早く見ることができるということ。完全に読み切るまで真っ白な画面で待たされるより、少しずつでも表示されていく方がユーザーエクスペリエンスも高くなる。

📖 続きを読む

実際に表示されているブロック要素のサイズを表示する

単純にwidthを指定しているところであればブロック要素の横幅はすぐにわかるのですが、borderやpadding、marginが入るとわかりにくくなる。たとえば

のように、入れ子で指定されている横幅がいくつになるのか、いちいち計算するのはめんどうくさい(右の例のように単純なときはいいですけど)。

📖 続きを読む

YSLOW 勉強 : 3: Add an Expires Header

rules for high performance web sitesの三つ目。Expires headerを使って構成要素をキャッシュ可能な状態にしよう、という話。キャッシュを持つことによって、キャッシュを読み込んだあとの不必要なHTTP requestを減らすことができる。WebサーバーがApacheであるなら、ExpiresDefaultの設定を使ってキャッシュする時間を設定することができる。

📖 続きを読む

WYSIWYG : IEのDOMではobjectタグの中にあるembedタグを認識しない?

あいまいなタイトル。実のところ、詳しくはよくわかっていないのですが、どうもIEのDOMではobjectタグの中にあるembedタグは削ってしまうようなのである。謎なのです。

webアプリケーションでよくあるWYSIWYGエディタ(リッチテキスト)では、すごくざっくりいうと、Javascriptで入力フォームであるiframe中のHTMLをツールボタンのクリックなどのイベントにあわせて、書き換えて動かしている。言い換えると、ブラウザが持っている情報を引き出して、変更して押し込んで、というやりとりをしている。そのため、ブラウザ側で期待されるデータを出力してくれないと、エディタから情報が消えてしまったりする可能性がある。

📖 続きを読む