ウェブサイトの制作に関わる上で、絶対に欠かせないのが「主要ウェブブラウザとの親和性」。各ブラウザごとに特有のコード解釈があり、その解釈の違いによってウェブサイトの描画にクセが発動する。場合によっては、そもそも解釈すらしてくれないブラウザもあったりして。特にInternet Explorerというブラウザね...。つまりIEね。

ウェブサイト制作の歴史は、ウェブブラウザとの闘いの歴史とも言える。2000年あたりから、趣味で作りだし始め、そこから5年ほどして仕事として制作に関わるようになり、気が付けば2020年。

今年は、本当なら東京オリンピック開催という、めでたい年になるはずだったが新型コロナ発生により延期。まぁこれは残念なことだが仕方ない。

だが、それ以外にもう1つ、自分にとって実に心待ちにしているイベントがこの2020年には控えてる。それは、「Internet Explorer11」のサポート終了だ。

IEはそのバージョンごとになんとか改善をしてきたんだとは思うんだけど、個人的に暗黒時代だったのが、IE6~9が存在していた時代。これはもう本当にヤバかった。特にIE6、そして7。そして8。

バージョンが上がるたびに制作負荷は改善されていったんだけど、リリース情報が出るたびに「次のバージョンは何が変更されたんだ?バグ報告は上がってないか?」と不安とストレスを感じながら仕事してた。

しかも、IE8が最新バージョンになっているのに、欠陥だらけのIE6を平然と使ってるお客さんがいたりして。そのせいで、ウェブサイトの新規政策案件の対象ブラウザが「IE6~8、それとモダンブラウザ」なんていう括りに。

『IE6から対象かよ、、透過pngでhover使えないじゃん。このデザイン、ボタンにシャドウが付いてるけど、どうすんの?』とか。

『このデザイン、レイヤーが3つくらいの想定だけど、z-indexをIE6で使うと背景画像が表示されないバグがあるんだよな、、』とか。

『IE6でfloatを使うのイヤなんだよな、、marginの解釈がバカだから』とか。

他にも山ほどあったIEのバグ。バージョンアップごとに改善されたように見せて、新しいバグとの闘いがあって、その解消のための手法を海外翻訳サイトから見つけてみたり。

怪しい要素には、zoom:1とか、position:relativeとかを充てたり。モダンブラウザとの差異をなくすためのjavascriptを読ませたり、CSSハックしたり。そこから、各ブラウザのレンダリングエンジンがあるっての学んでいって。

IE9が出始める頃あたりからは、知識と経験を積んでいたから、症状が発生するような組み方はしなくなってたし、致命的な組みなおしが発生するようなことはなかった。事前にクライアントにはIEの特徴を案内をして、IE6ならではの工数が掛かる点について、了解を得るようにもなった。

それでも、何回かは『あれ、ここオカシイじゃん』っていう場面に遭遇することもあったけど。

そこから少し時代は過ぎていき...。chromeが台頭しはじめ、IEのシェアを超えていったあたりから、IEによる呪縛からは解放されていく。

IE10が出たあたりからは、コーディング前にCSS3がどの程度対応しているかをチェックするくらいになってて、『このプロパティってIE11は対応してるんだっけ?』って感じ。

そこからIE11が出て、Microsoft Edgeが出て。そんなIE11は今年でサポートが終了だし、EdgeはレンダリングエンジンをEdgeHTMLからBlinkに変更。これによって、インターネット時代の一時代を築いた「IEの本当の終焉」となるのかどうか。

まぁ、今となっては、IE6とか当時の苦悩っていうのは、笑い話のネタになるわけで、この血がなくなるかもしれないと考えると、なんというか、少し寂しいのかもしれないな 笑。