003 ある日のナレッジセンターへの質問「IE8対応ってどうやるの?」


こんにちは!id:EC-OneのAkiです。

今回はナレッジセンターの活動の一つ、質問窓口(ヘルプデスク)の紹介をしたいと思います。
前回少しお話した*1「レスキューサービス」の社内版です。

質問窓口の対応件数とその内容

EC-One(イーシー・ワン)のナレッジセンターでは、2007年の4月からプロジェクト支援の一環として質問窓口(ヘルプデスク)を始めました。質問窓口へやってくるものは技術的な質問が主ですが、「こんな開発事例ない?」や「この技術に詳しい人を紹介して!」とか「こういう設計書/報告書のサンプルが欲しい」や「営業や客先打合せに同行して」といったものもあります。

一般的な問題であればプロジェクトの担当者が自分で解決できるため、ナレッジセンターへやってくるものはニッチな(?)質問が多いです。受けた質問とそれに対する回答は、全て公開しているのですが、質問者以外の人にはニッチすぎてあまり参考にならないかもしれません。(^ ^;
そんな対応履歴の中から、無作為に何件か取り出してご紹介してみますと...

  • [Spring] EJB呼出エラー - object is not an instance of declaring class
  • バッチ高速化 - Javaバッチソース解析&PL/SQL化検討支援
  • Javaバッチ設計書サンプル提供
  • プロジェクト状況ヒアリング&今後の支援内容の検討
  • 携帯宛メールの注意点、どんなものがあるか
  • なぜ「メールは7bit」と言われるのか
    • 7bitの理由
    • 一般的な日本語メールの本文の作り方
    • 8bitの文字コードを使用したい場合の作り方
    • 日本語メールのSubjectの作り方
  • IE7用ページのIE8対応法 (サイト全体対応法/ページ毎対応法/ユーザ自身による対応法)
  • [Trac] チケット変更時に送るメールのSubjectにオーナー等を入れる方法
  • [Java] Enumのコンストラクタとstaticの関係でのハマりどころ

上記のような問い合わせがありました。
「それ私も聞きたい!」と思うような、気になるものはありましたか?

質問と回答を紹介 〜IE7向けページのIE8対応方法〜

上に書いた問い合わせ例の中から、「IE8対応ってどうやるの?」という質問の事例を、もう少し詳しく書いてみます。

Internet Explorer7用に作ったウェブページ(HTML)をInternet Explorer8で見ると表示が崩れてしまう場合があります。この時の質問は、既に提供しているウェブページを、IE8でもちゃんと表示が出来るように対応させる方法が知りたい、というものでした。

この場合の対応は結構簡単ですよ。ウェブページごとに対応するにせよ、ウェブサイト全体で一括して対応するにせよ、IE8に用意されている「互換モード」を呼び出すだけで対応可能です。「IE8の互換モードって何?」という方は、引用元を参照してみてください。

代表的なブラウザの最新版には、描画モードとして、「標準モード」と「互換モード」という2つのモードが用意されています。この違いは、次の通りです。

  • 「標準モード」 : できるだけ文法を正しく解釈して表示します。文法ミスがあれば、その記述は無視します。
  • 「互換モード」 : 古いバージョンのブラウザに合わせた表示をします。古いバージョンで誤って解釈していた部分は、誤ったままで表示します。文法ミスがあっても適当に解釈して表示します。
DOCTYPE宣言がないとIE7でも表示は古いまま [ホームページ作成] All About
ウェブサイト全体で対応する方法

ウェブサイト全体で一括して対応するには、HTTPヘッダを利用します。

  • レスポンスヘッダに「X-UA-Compatible:IE=EmulateIE7」を追加
ウェブページごとに対応する方法

ウェブページごとに対応する場合には<meta>タグを利用します。

  • HTML内に「<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>」を記述

「互換モード」と一括りにして説明しましたが、IE8には「IE7互換モード」や「IE6以前互換モード」がありますので、上記の「EmulateIE7」の部分には、他にも「EmulateIE8」や「5」等が指定できます。
もっと詳しく知りたい方には、@ITの記事「特集:改訂 Web制作者&開発者のためのIE8概説」が参考になると思います。

ページ側でなく、ユーザ側で対応してもらう方法

また、ページ側で指定するのではなく、ユーザが自分でIE8を操作するやり方でも、対象ページ毎に「互換モード」を指定することが可能です。

Internet Explorer 8 に組み込まれた [互換表示] ボタンを使用すると、古いブラウザー向けに設計された Web サイトを表示できます。テキスト、画像、テキスト ボックスなどが正しく位置合わせされていない場合は、[互換表示] をクリックするとサイトが正しく表示されます。この [互換表示] ボタンは、アドレス バーの [更新] ボタンの隣にあります。

Internet Explorer 8正式版レビュー(1/3) - @IT

こんな感じで、小さなことでも気軽に質問出来る場として「ナレッジセンター」は今日も頑張っています。
IE8対応の事例、お役に立ちましたでしょうか?それではまた!







JavaRuby及び周辺のOSSを用いた開発に関して、企業があらゆる悩みごとを相談できるのが、ナレッジセンターの「レスキューサービス」です。
どんな相談でも親身に受け付けますので、レスキューサービスってなに?もっと知りたい!と思った方はお気軽に問い合わせ下さい。
問い合わせ画像リンク