サイト製作中に突然IE6でFlashが表示されなくなった。
解決してしまえばIE条件分岐用のコメントを削除してしまっていたという事なのだが。
Dreamweaver CS4ではFlash挿入時にサイトルートに自動的にScriptsフォルダが作られ、
swfobject_modified.js
expressInstall.swf
の二つのファイルが入れられる。
これはまぁインターネットエクスプローラーで起きるFlashの不具合を解消するために自動挿入されるものである。
(不具合・・・ある日突然ホームページを訪問したら全部のFlashコンテンツがクリックしないと動作しなくなった「マイクロソフトのWebブラウザ特許侵害回避用セキュリティパッチ問題」を回避するため)
そこまでは良いのだが、その挿入されたコードがコメントだらけの非常に不細工なものであり、ちょっとでも見やすくするためにソースコードを見ながら以下のようなコメントを削除していた。
<!-- このパラメータタグにより、Flash Player 6.0 または 6.5 以降を使用して、Flash Player の最新バージョンをダウンロードするようメッセージが表示されます。ユーザにメッセージを表示させないようにする場合はパラメータタグを削除します。 -->
<!-- ブラウザには、Flash Player 6.0 以前のバージョンを使用して次の代替コンテンツが表示されます。 -->
と同時にインターネットエクスプローラーで閲覧した時に動作する「必要な」コメントまで削除してしまっていた。
<!--[if !IE]>--> <!--[endif]-->
このコメントにはさまれている部分は
「もし(if)インターネットエクスプローラー(IE)なら~~~」
で適用される部分だ。
なんとなく
「コメントって言うんだから全部ただのメモでしょ?消しちゃ駄目なの?」
なんて考える僕のよう素人が引っかかりそうな部分なので、一応ここに記しておく。