マイクロソフト(株) : 奥津 和真氏
Windows 2000チーム徹底インタビュー (その6) Internet Explorerのゴールは表示された、すべてのものにアクセスできるようにすることです~Internet Explorer 5.5~
2000年12月13日 01時05分更新
以前の、CSSで割り当てられるようなビヘイビアの場合、たとえば1つのDHTMLビヘイビアがあって、その中にカレンダービヘイビアがあるとしましょう。その中にCSSで設定されたスタイルがあったとする。それを何もほかにスタイルを設定しないで使っている分には構2ないのですが、CSSなので、たとえばビヘイビアを使ったことのないデザイナの方が、ページ全体のスタイルとして別のCSSを定義してしまったとする。たとえば<BODY>など広い範囲のスタイルを定義してしまったとします。すると当然カスケーディングなので、カレンダーのコンポーネントが、カレンダーのビヘイビアの製作者が意図しない色やスタイルが適用されてしまう可能性がある。確かに機能の再利用はできるけれど、コンポーネントの色を変更しようとしていないのに、誰かがページのCSSを変更したがために、コンポーネントの中のスタイルまで変わってしまうといったことが起こる。つまり、ビヘイビアの種類によっては、それ自体が台無しになることがあるわけです。
これは何に原因があるかと言うと、ビヘイビアのHTMLコンポーネントと、メインのドキュメントの特定の属性の関連が、完全に切り離されていないからです。つまり、コンポーネントとしての再利用性が完璧にはなっていない。この問題を解決するために、簡単に言ってしまえばそれを切り離せるようにしました。今挙げた例で言えば、カレンダービヘイビアがあって、その中でカレンダーのスタイルはこれで、背景色は白でというように固定になっていた場合、それを呼び出す側で全体のスタイルを大きく変更しても、カレンダーのコンポーネントには影響がないようにした。
「エレメントビヘイビア」と「ViewLink」の2つが搭載されて、より完全にWeb上でのDHTMLの機能が分離できるようになった。これは、インターネットの世界というよりは、企業システム内での利用を考えた場合、独立性を持たせたコンポーネントを共有するということは、非常に現実的であり、非常によい機能であると思います。「5.0」と「5.5」では、この機能がある意味一番の大きな違いになります。
たとえば「4.0」と「5.0」では、ブラウザのコンポーネントを応用した「エディティングコンポーネント」がありました。今までの「エディティングコンポーネント」では、編集モードにするときにドキュメント全体を一度読み込む、つまり再ロードする必要があった。「5.5」では、その必要がなくなり、HTMLドキュメント内の「編集可能な領域」がサポートされました。これは特定のspanタグの間に囲われたコンテンツを、その場で編集できるようにする機能です。おそらく、特定のWebアプリケーションやWeb上のサービスなどで使うことを想定して実装されたものでしょう。今までは全体しか編集できなかったものが、「編集可能な領域」をサポートすれば、ユーザーの入力などに応用することもできるわけです。しかし、現状これだけの機能ですと、バックエンドでは入力/変更を取るためのコードを書く必要があります。利用するには、アイデアを捻る必要があるでしょうね。
また、「ウィンドウなしのフレーム」がサポートされました。この機能は、使いようによっては一般ユーザーの方がホームページを作る際に、役に立つかもしれません。
今までの「iframe」では、インラインのフローティングフレームを立ち上げると、それに対してCSSのz_indexは使えなかった。つまり重なり合いの指定が できなかった。それが「5.5」からは指定可能になっています。かつiframeの下の背景を透明にでき、背景を透けさせるようなこともできるようになっています。まだ不確定ですが、これはiframeだけでなく、普通のframeにも対応させるかもしれません。コードとして、きれいかどうかは別としても、このiframeが 透明にできることを前提にすると、ページデザイン的にかなり無理な配置が可能になります。今までだったらできなかったような、iframeをあえてページ内 のどこか自由な位置に出してステータスを表示させるとか、iframeの中身を、あたかも自分のサーバから読み込まれているかのように、ほかのサーバから持って来て表示するといったことも考えられる。透過できれば、レイアウトの自由度が非常に高くなると思います。
そのほかにもう1つ、細かい機能ですが「PopUp」機能が追加されています。これは、通常のデスクトップなどで、よくポップアップウィンドウという最上位の小さなウィンドウが開くことがありますが、これがWebでも作れるようになった。似たものは、今でもサイトなどへアクセスすると、小さなウィンドウがたくさん開くことがありますが、今回は完全にDHTMLの中でポップアップウィンドウをサポートしました。