Internet Explorer 8 の新機能

このトピックでは、Internet Explorer 8 のプラットフォームの特徴を紹介します。ここをクリックして、Microsoft Windows XP、Windows Vista Service Pack 1 (SP1)、Windows Server 2003、または Windows Server 2008 用の Internet Explorer 8 をダウンロード してください。現在リリースされている Windows 7 には、Internet Explorer 8 が含まれています。

メモ : Internet Explorer 8 は、システムの更新プログラムとしてインストールされます。 Internet Explorer をアンインストールするには、コントロール パネルの [プログラムの追加と削除] の [タスク] ウィンドウで [インストールされた更新プログラムを表示] をクリックし、更新プログラムの一覧にある Windows Internet Explorer 8 をダブルクリックします。

このトピックは、次の各セクションで構成されています。

  • 64 ビット ダウンロード
  • アクセラレータ
  • アクセシビリティと ARIA
  • ActiveX の機能強化
  • AJAX の機能拡張
  • CSS 準拠
  • 開発者ツール
  • ドキュメント互換モード
  • DOM ストレージ
  • HTML と DHTML の機能強化
  • 可変 DOM プロトタイプ
  • 保護モードの機能強化
  • RSS の機能
  • 検索候補
  • セキュリティおよびプライバシー
  • セレクター API
  • Web スライス
  • ズーム機能の強化
  • 関連トピック

64 ビット ダウンロード

Internet Explorer では現在、4 GB を超えるファイルのダウンロードをサポートしています。 Internet Explorer 8 のユーザーは、既定でこの機能を利用できます。 サード パーティの拡張機能は、 IBindStatusCallbackEx を実装し、 GetBindInfoEx コールバック メソッドから BINDF2_READ_DATA_GREATER_THAN_4GB を返す必要があります。 ダウンロードの進行状況は、 BINDSTATUS_64BIT_PROGRESS フラグを使用することにより、 OnProgress を介して報告されます。 これらのコールバック メソッドは、 IMoniker::BindToObjectIMoniker::BindToStorage によってサポートされています。

アクセラレータ

インターネットの双方向性がますます高まってきました。そのため、Internet Explorer 8 では Web ページのコンテンツの操作がより簡単になりました。 アクセラレータは、ユーザーが選択したサービスに情報を送ることによって Web ページのコンテンツを操作する、ブラウザー拡張機能の一種です。 サービスは、コンテンツ ("電子メール" や "ブックマーク" など) の操作を実行するか、その他の情報を提供 ("変換" または "マップ") します。 アクセラレータのインストールやアクセスはブラウザーのショートカット メニューから行うことができるため、より効率的なブラウザー操作が可能になります。

詳細については、「 OpenService アクセラレータ開発者向けガイド」 (英語の可能性あり) を参照してください。

アクセシビリティと ARIA

Web のユーザー インターフェイス (UI) の複雑化に対応して、 Web Accessibility Initiative  World Wide Web リンク グループは、Web サイトの作成者がカスタム UI 要素のアクセス方法を定義するための方法を紹介する、Accessible Rich Internet Applications (ARIA) のロードマップを定義しました。 ARIA は、一般的な UI コントロールにマッピングされる HTML 属性のセットを定義することでこれを行います。 その結果、障碍を持つユーザーが、機能豊富な対話モデルで Web サイトにアクセスできます。 Internet Explorer 8 の Microsoft Active Accessibility API を通じて ARIA を公開することで、Microsoft Active Accessibility を既に使用している支援テクノロジでも ARIA を簡単にサポートできます。

  • alt 属性は、ブラウザーが IE8 モードで動作しているときは、イメージ ツールヒントとして表示されなくなりました。 代わりに、 longDesc 属性のターゲットが存在する場合は、これがツールヒントとして使用されます。それ以外の場合は、 title が表示されます。 alt 属性は、依然として Microsoft Active Accessibility 名として使用され、title 属性は、alt が存在しない場合にのみフォールバック名として使用されます。
  • ARIA 属性の構文は、IE8 モードと IE7 モードで同じです。 Internet Explorer 8 の初期のリリースでは、互換表示で ARIA 属性を設定するときは、レガシのプロパティ構文を使用する必要がありました。 ブラウザー間の互換性を維持するには、必ず WAI-ARIA 属性の構文を使用して、ARIA プロパティにアクセスし変更する必要があります (例 : object.setAttribute("aria-valuenow", newValue))。

詳細については、次のドキュメントを参照してください。

ActiveX の機能強化

Internet Explorer 8 では、Microsoft ActiveX のインストールとデバッグをより詳細に制御できます。

  • サイトごとの ActiveX — 1 つのサイトのみで実行されるように作成されている ActiveX コントロール全体のほぼ半数は、いずれの形式のサイト ロック テクノロジも使用していません。 このため、多くのコントロールは既定では安全でなく、悪意のある Web サイトによって不正に使用される可能性があります。 これを防ぐために、Internet Explorer 8 では、ActiveX コントロールの実行を許可するかどうかをユーザーがサイトごとに決定できます。 詳細については、「 サイトごとの ActiveX コントロール」 (英語の可能性あり) を参照してください。
  • 非管理者インストール — 標準ユーザー (管理者権限を持たないユーザー) は、UAC プロンプトや管理者の関与なしに、ユーザー プロファイルに ActiveX コントロールをインストールできます。 ユーザーが悪意のある ActiveX コントロールをインストールした場合は、ユーザー プロファイルのみが影響を受け、システム自体は危険にさらされません。 詳細については、「 Non-管理者以外の ActiveX コントロール」 (英語の可能性あり) を参照してください。
  • ActiveX ログ — Internet Explorer 8 は、最も一般的なインストールとインスタンス化のエラー (ActiveX コントロールを正常にインスタンス化できないようにするセキュリティに関する制限など) をレポートできます。 ActiveX ログは、 Internet Explorer Application Compatibility Toolkit を使用することにより、他の Internet Explorer の互換性ログと同じように機能します。 詳細については、「 Internet Explorer Compatibility Test Tool の使用」 (英語の可能性あり) を参照してください。

AJAX の機能拡張

AJAX (Asynchronous JavaScript and XML) によって、Web アプリケーションの構築方法が変わりつつあります。 Internet Explorer 8 では、AJAX アプリケーションを有効にする XMLHttpRequest オブジェクトに新しい機能が追加されています。

  • AJAX ナビゲーション — 従来の Web ページ ナビゲーションをトリガーしないクライアント要求が、 hash プロパティを更新できるようになりました。これにより、[戻る] ボタンが適切に機能します。
  • 接続イベント — データの信頼性が優先される状況において、AJAX アプリケーションでは、ネットワークから切断されている場合はデータをローカルに保存するように選択できます。 onoffline および ononline を参照してください。
  • サーバーごとの接続 —  Web ページ読み込み時間の低下の可能性や AJAX シナリオでの並列処理の増加に対処するために、Internet Explorer 8 は、既定でのホストごとの接続数を増やします。
  • ドキュメント間メッセージング — 異なるドメインにあるドキュメントは、 postMessage を使用してデータを安全に交換できます。 メッセージを受信するドキュメントは、 onmessage イベントをリッスンします。
  • ドメイン間要求 (XDR) — 開発者が、さまざまな Web サイトのサービスをより安全に組み合わせることができるように、 XDomainRequest オブジェクトは、Web ページ内の信頼されていないモジュール間での通信を制限および保護します。 ブラウザーは、潜在的な脅威からユーザーを保護する一方で、強力なサイト間対話を可能にします。
  • タイムアウト要求 —  Internet Explorer 8 では、サーバー要求時に timeoutプロパティを設定できるようになりました。
  • HTML の削除 — window.toStaticHTML を使用して、イベントのプロパティとスクリプトを HTML フラグメントから簡単に削除します。
  • ネイティブ JSON のサポート — AJAX シナリオで広く使用されている JavaScript Object Notation (JSON) オブジェクトが、Microsoft JScript で直接シリアル化および解析できるようになりました。 JSON.stringify を使用してオブジェクト データを文字列に変換し、 JSON.parse を使用して JSON 形式のテキストを回復します。 toJSON メソッドを実装して、オブジェクトの出力を微調整することもできます。 このような新しいメソッドは、スクリプトより高速で、eval を使用するより安全です。

詳細については、次のドキュメントを参照してください。

CSS 準拠

  • テーブル レイアウト — 長年の間、テーブルはインターネット上で好まれるレイアウト メカニズムでした。 Internet Explorer 8 では、 display 属性を使用して、テーブル形式の書式設定をテーブル以外の要素に適用できるようになりました。 実際には、CSS テーブルは HTML マークアップよりも許容性があります。HTML で作成されたテーブルは、コンテナーを閉じて予期しないネストを回避しますが、CSS ルールで作成されたテーブルは要素をネストして有効になります。
  • データ URI — このメカニズムにより、Web ページの作成者は、URI (Uniform Resource Identifier) を使用してエンティティを取得する場所を識別するのではなく、URI 内に小さなエンティティを直接埋め込むことができます。 これは主に CSS またはレイアウト内で使用される小さいイメージ (箇条書きの記号など) が対象になります。 例については、 data プロトコルを参照してください。
  • 生成されるコンテンツ — Web ページの作成者は、次のドキュメント ツリーから取得されないコンテンツをレンダリングできます。
    • :before および :after  — 新しい content ルールと併用すると、大部分の要素の前後に表示されるように動的コンテンツを記述できます。
    • counter-reset および counter-increment  — ドキュメントに番号を自動的に挿入します。
    • quotes  — 言語に依存した引用符または右向きの引用符を簡単に挿入します。
  • outline — 要素のサイズに影響を与えずに要素を強調表示できます。 outline は、 outline-coloroutline-style、および outline-width の略式プロパティです。
  • 印刷 — 次のプロパティが追加されました。
    • page-break-inside  — 要素のボックス内での改ページを回避します。Internet Explorer は、必要に応じて、要素を後続の印刷ページに移動します。
    • widows および orphans — 各印刷ページの下部および上部に表示される行数を制御します。
  • 追加された擬似クラス — Internet Explorer 8 では、次の擬似クラスがサポートされています。
    • :lang(C) — セレクターは、要素の lang 属性またはその親の 1 つに基づいて要素を合わせることができます。 Web ページの既定の言語は、 html 要素で設定されます。
    • :focus  — 要素に入力フォーカスがあるときに適用されます。
  • ブラウザー固有の属性 —  Internet Explorer にのみ適用されるカスケード スタイル シート (CSS) プロパティは、 -ms-writing-mode のように -ms- プレフィックスを持つ名前が付けられます。

詳細については、次のドキュメントを参照してください。

Internet Explorer によって使用される CSS テスト ケースについては、「 Windows Internet Explorer テスト センター」 (英語の可能性あり) を参照してください。

開発者ツール

Internet Explorer 8 の組み込みの開発者ツールでは、HTML、CSS、およびスクリプトに関連した問題の検証やその解決に役立てるために、Web ページの内部表現を公開しています。 一部の機能は、以前のバージョンのブラウザーのアドオンとしてリリースされた開発者向けツール バーのユーザーには馴染みがあるかもしれません。

  • CSS ツール — Web ページが読み込むスタイル シートで定義されたさまざまなルールを表示します。
  • スクリプトのデバッグ — Internet Explorer を終了せずに、クライアント側スクリプトのブレークポイントを設定し、ステップ実行できる組み込みの軽量デバッガーです。
  • スクリプト プロファイラー — スクリプトが大部分の時間を費やす場所を視覚的に決定します。
  • バージョン モードの切り替え — 異なるブラウザー モードに切り替えて、コンテンツが標準に準拠しているかどうかをテストします。

詳細については、次のドキュメントを参照してください。

ドキュメント互換モード

Internet Explorer 8 では、完全な CSS 2.1、強力な HTML 5 サポート、およびドキュメント オブジェクト モデル (DOM) の相互運用性の修正を目的として、新しいレイアウト エンジンに対する投資を行ってきました。 厳密な !DOCTYPE を指定するサイトでは、最高レベルの標準サポートが既定で有効になっています。 Web サイト作成者は、次の meta タグを使用することで、Internet Explorer 7 との最高の互換性を選択できます。

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 

Internet Explorer 8 Beta 1 の [IE7 のエミュレート] ボタンが、アドレス バーの隣にある [互換表示] ボタン Cc288472.compat_view_icon.gif に置き換わりました。 ボタンをクリックすると、ブラウザーの互換モードがすぐに切り替わります。ブラウザーを再起動する必要はありません。

詳細については、次のドキュメントを参照してください。

サーバー上の互換モードの設定については、次を参照してください。

DOM ストレージ

大量のデータをユーザーのハード ドライブに直接格納して取得できる機能は、クライアント/サーバー間の対話を超えてその範囲を拡張したいブラウザー ベースのアプリケーションにとって重要です。 ローカル ストレージは、インターネットから切断されているときにも使用でき、アクティブなインターネット接続が回復したときにローカルの変更を同期します。 接続ステータスが変更されると、スクリプト可能なオンライン接続イベントおよびオフライン接続イベントが起動します。

詳細については、「 DOM ストレージの概要」を参照してください。

HTML と DHTML の機能強化

新しい HTML 4.01 実装は、相互運用性がはるかに高くなりました。 機能強化を以下に示します。

  • object タグ イメージ フォールバックは、他のブラウザーと相互運用できます。 たとえば、大きさのない object タグは、0 x 0 ピクセルではなくイメージと同じサイズになります。
  • button 要素は、 innerHTML 要素ではなく、その value 属性を発行します。これは、ブラウザー間の FORM シナリオで button 要素を使用できるようになったことを意味しています。
  • getElementById メソッドは大文字と小文字が区別されるようになり、 NAME 属性を使用した検索時の間違いがなくなりました。
  • setAttribute メソッドは大文字と小文字が区別されなくなったため、属性の指定に "キャメル形式" ("camelCaseWord" など) を使用する必要がありません。 また、 CLASSFOR などの HTML 属性を正しく識別します。

詳細については、次のドキュメントを参照してください。

可変 DOM プロトタイプ

JScript は、既存のオブジェクトのメソッドを上書きし、オブジェクトのすべてのインスタンスに直ちに適用される新しいメソッドを作成する方法を備えています。 この堅固なバインドによって、スクリプトは、DOM オブジェクトを実際の JScript オブジェクトのようにネイティブに操作できます。 要素のネイティブ DOM プロトタイプ を提供することにより、Internet Explorer コンポーネント オブジェクト モデル (COM) インフラストラクチャとスクリプト エンジン間で作成されるような循環参照を、JScript エンジンを使用して直接管理できるようになるため、検出が難しいメモリ リークが軽減します。

詳細については、次のドキュメントを参照してください。

保護モードの機能強化

Windows Vista の保護モードでは、Cookie などの整合性レベルが低い場所へのファイルの書き込みが制限されます。 Internet Explorer 8 では、整合性レベルが中程度のアプリケーションは、 IEGetProtectedModeCookie および IESetProtectedModeCookie を使用して、ユーザーの操作なしに整合性レベルが低い Cookie にアクセスできます。 通常どおり、インターネットからダウンロードされた Cookie を使用するアプリケーションは、これらの Cookie に悪意のあるデータが含まれていることを想定する必要があります。

Internet Explorer 8 では、保護モードで開かれているブラウザーでも、整合性レベルが中程度のプロセスから起動した後に制御できます。 Navigate2 の呼び出し後、 NewProcess イベントは、開かれたばかりの新しい WebBrowser オブジェクトに参照を返します。

RSS の機能

  • 認証済みフィード — Windows RSS プラットフォームは、ユーザーの操作なしで認証を実行できるようになりました。 ユーザー名とパスワードは、フィードの [プロパティ] ダイアログ ボックスで設定できます。
  • 有効 ID — フィード項目用の一意の ID は、ハッシュ アルゴリズムを使用して作成されます。 この値を使用して、項目の既読状態と未読状態をコンピューター間で同期させたり、共通フィード リスト内の項目と他のプログラムによって格納された項目を比較したりすることができます。

詳細については、「 Internet Explorer 8 の新しい RSS 機能」 (英語の可能性あり) を参照してください。

検索候補

Internet Explorer 8 では、次の機能により、検索操作が Internet Explorer 7 から大幅に向上しています。

  • 検索候補 — ユーザーが適切な用語をできるだけ早く検索するのを支援します。 JSON と拡張された OpenSearch XML 形式の両方がサポートされています。
  • 視覚的な候補 — イメージ検索と他の記述的コンテンツを統合します。
  • ユーザー エクスペリエンスの向上 — クイック ピック ドロップダウン リスト ボックスとアクセラレータ ショートカット メニューを使用して、インストールされている検索プロバイダーの選択および切り替えを簡単に行うことができます。 また [History Search] を使用すると、検索ボックスを終了しなくても、最近表示された Web ページが自動的に検索されます。

検索プロバイダーと Internet Explorer 8 を統合する方法については、「 Internet Explorer の検索プロバイダーに関する拡張性」 (英語の可能性あり) を参照してください。

セキュリティおよびプライバシー

次の機能により、Web をより安全に閲覧できるようになります。

  • クリックジャッキングの防御 : 一部のハッカーは、ユーザーを騙して、安全で害のない機能を実行するように見えますが、実際は無関係なタスクを実行するボタンをクリックさせようとします。 クリックジャッカーは、特定の UI 要素を偽のテキストとイメージでオーバーレイする透明のフレームを使用することにより、悪意のあるコードを埋め込む、つまりユーザー インターフェイスを "変更" します。 クリックジャッキングを防止するために、Web サイトの所有者は、X-Frame-Options という名前の HTTP 応答ヘッダーを HTML ページと共に送信して、ページがフレーム内に表示される方法を制限できます。

    X-Frame-Options: Deny
    X-Frame-Options の値に Deny トークンがある場合、ページがフレームの中に含まれていると、Internet Explorer 8 はページの表示を行いません。 値に SameOrigin トークンがある場合、トップレベルのブラウザー コンテキストがディレクティブを含むページのオリジナルと異なると、Internet Explorer はページの表示を行いません。 ブロックされたページには、"このコンテンツはフレーム内で表示できません" エラー ページが表示されます。

  • クロスサイト スクリプティング (XSS) フィルター : Internet Explorer 8 のこの新しい機能により "リフレクション (タイプ I) XSS" の脆弱性を悪用することが難しくなります。 スクリプトは、サーバーの応答の生成に HTTP 要求の一部が使用されるときに反映できます。これにより、要求内の悪意のあるスクリプトは、残りのページと同じアクセス レベルで実行できるようになります。 XSS フィルターは、ブラウザー内を移動するすべての要求と応答を監視します。 フィルターは、クロスサイト要求でスクリプトを検出したとき、スクリプトがサーバーの応答で再生された場合に、そのスクリプトを特定して無効化します。 このような動作が発生した場合、メッセージ "Internet Explorer modified this page to prevent a potential cross-site scripting attack" が表示されます。 コンテンツのフィルターを無効にするには、Web 開発者は次の HTTP ヘッダーを設定できます。

    X-XSS-Protection: 0

  • 閲覧履歴の削除 : ユーザーが Web を閲覧すると、Internet Explorer は、ユーザー設定、入力データ、および閲覧場所に関する情報を格納します。 一部の拡張機能が同じことを実行している可能性があります。 以前は、ユーザーがインターネット一時ファイル (TIF) フォルダーを消去したり、Cookie や履歴を削除したりしたときにアドオンに通知する方法がありませんでした。 現在は、 IDeleteBrowsingHistory インターフェイスを実装することにより、ユーザーがブラウザーのキャッシュをクリアしたときに拡張機能に通知できます。これにより、拡張機能は独自の格納データを同時に削除できます。

  • InPrivate フィルター : Web サイトは、Cookie を使用しなくてもユーザーを追跡できます。 Internet Explorer 8 では、コンテンツをブロックしてサード パーティのコンテンツ (表示される Web ページに組み込まれた別の Web サイトのイメージとスクリプト) との通信を回避することにより、ユーザーの閲覧習慣が公開されないようにできます。 InPrivate フィルターは、ユーザーが閲覧している間、サード パーティの項目の記録を保持し、(ユーザーが有効にしている場合は) 10 ~ 30 を超えるファースト パーティのサイトにサード パーティのコンテンツを提供した Web サイトを自動的にブロックできます。 アドオンおよびツール バーの開発者は、 IEInPrivateFilteringEnabled を呼び出すか次のようなスクリプトを使用して、ユーザーが InPrivate フィルターを有効にしているかどうかを判断できます。

    var enabled = window.external.InPrivateFilteringEnabled(); 

詳細については、次のドキュメントを参照してください。

セレクター API

CSS セレクターの機能を使用して、DOM 要素を迅速に特定します。 API には、セレクター (またはセレクターのグループ) を取得し、一致する DOM 要素を返す querySelector および querySelectorAll という 2 つのメソッドが導入されています。 これらのメソッドを使用すると、特定の基準に基づいた要素ノードのセットの照合が簡単になります。 セレクター API は、ネイティブ以外の実装に比べてパフォーマンスを大幅に向上させます。

詳細については、「 JavaScript を使用するオブジェクトの選択」 (英語の可能性あり) を参照してください。

Web スライス

ユーザーは Web スライスを使用して、Web ページの特別のマークされたコンテンツを購読できます。 コンテンツが変更されると、[お気に入り] バーでユーザーに通知されます。[お気に入り] バーでは、他の場所に移動しなくてもコンテンツをプレビューできます。

詳細については、次のドキュメントを参照してください。

ズーム機能の強化

Internet Explorer 8 は、Internet Explorer 7 よりも高品質で、予測しやすく、持続性のあるズーム エクスペリエンスを備えています。より持続性のあるズーム状態を提供するだけでなく、大部分のメインストリーム シナリオに対応するために水平スクロール バーを削除しています。 新しいウィンドウ、ダイアログ、ポップアップ ウィンドウは、自動的に親のズーム レベルを継承します。

関連トピック