PowerTools SPREAD for ASP.NET 8.0J
ブラウザのレンダリング

SPREADを使用して作成したWebアプリケーションはサーバー上に置かれ、クライアント側のエンドユーザーからアクセスされます。このとき、クライアント側にHTMLページを生成しますが、ブラウザによって出力されるHTMLが異なります。

SPREADは、ユーザーエージェントにてブラウザを判別して各々のブラウザに合わせて処理を実装しています。

一方、Internet Explorer(以下IE)では「ドキュメントモード」と「ブラウザーモード(ユーザーエージェント)」との機能が提供されています。

詳細な情報については、MSDNで公開している記事(ドキュメント互換性の定義)を参照してください。

SPREADは、IEの標準モードで実行すれば問題なく動作しますが、上記2つのモードのIEのバージョンが一致しない設定を行った場合は正しく動作しない場合があるので注意が必要です。

例えば、HEAD 要素に以下のMETAタグを記述すると、ドキュメントモードはIE8となります。

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

しかし、このページをIE11で表示すると、ブラウザーモード(ユーザーエージェント)がIE11になり、ドキュメントモードのIEのバージョンと一致しません。この状態でSPREADを実行してもレイアウトが崩れたり、スクリプトエラーが発生するなど、正しく動作しません。

この場合に備え、FpSpread クラス のDocumentMode プロパティを使用することで、SPREADではどのバージョンのIEに適したレンダリングをするかを設定することができます。

次のサンプルコードは、ユーザーエージェントがIE8でWebページを表示した場合と同じHTMLが出力します。METAタグによりドキュメントモードがIE8に設定されている場合に有効です。

FpSpread1.DocumentMode = FarPoint.Web.Spread.DocumentMode.IE8;
FpSpread1.DocumentMode = FarPoint.Web.Spread.DocumentMode.IE8

  • 上記の方法で2つのモードのIEのバージョンを一致させても、ブラウザのレンダリングの違いにより、IEの標準モードでは発生しない問題が発生する可能性があります。そのため、極力標準モードでのご利用を推奨いたします。
  • 本バージョンでは、Internet Explorer 7以前のバージョンをサポートしておりません。そのため、ドキュメントモードをIE7やQuirks(IE5)モードにした場合の動作には対応していません。このレンダリングが有効になるDOCTYPEにも対応していません。

DOCTYPEの設定が表示に与える影響

DOCTYPE宣言により、標準準拠モードに設定すると、SPREADは次の点に関して影響を受けます。

標準準拠モードで表示すると列幅にセルの余白分の幅を付加して表示します。

関連トピック

 

 


© 2003-2015, GrapeCity inc. All rights reserved.