質問:
doctypeがxhtml1.0と互換性のあるポータルがあります。次に、ポータルにコンテンツiframeがあり、さまざまなWebアプリケーションが埋め込まれています。それらのアプリケーションのいくつかは私たちによって書かれました、いくつかはサードパーティです。
そのiframeに、特にMicrosoftReportingServiceレポートを埋め込みます。問題は、ReportingServiceReportsが「正しく」レンダリングするためにQuirksModeを必要とすることです。また、ポータルはQuirksModeでは機能しません(9つ、場合によってはIE8のみを対象としているため、私にとっては問題ありません)。ポータルもIE7で正常にレンダリングされないため、IE8のサポートをできるだけ早く廃止する予定です。
ただし、IE9は親ページからドキュメントモードを継承しているように見えるため、レポートサービスレポートは、クォークモードではなくIE9標準モードでレンダリングされます。したがって、すべてのレポートが正しく表示されません(少し意味はありませんが、非常に深刻で、完全に正しくなく、絶対に恐ろしいです)
問題は、レポーティングサービスを変更できないことです...
レポーティングサービス(どのバージョンでも)に非クァークズモードのHTMLをレンダリングさせる方法はありません。
iframeはクァークズモードでレンダリングされますか?
追加できます
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
<meta http-equiv="X-UA-Compatible" content="IE=8" />
iframeをQuirksModeでレンダリングするため。(編集:ポータルがどのようにレンダリングされ、とにかく配置されるかを気にしない場合でも機能しません)
残念ながら、ポータルは前述のとおりであり、IE7と互換性がないため、これはオプションではありません。
また、SSRSレポートはポータル以外のドメインで実行されるため、JavaScript/jQueryを使用することはできません。
親ページのレイアウトを破壊せずに、QuirksModeでiframeをレンダリングする方法はありますか?
または、レポートサービスに有効なHTMLをレンダリングさせる(既存の)方法(カスタムHTMLレンダリング拡張機能を作成する時間は確かにありません)?