HTML コメントと IE 条件付きコメント
Visualforce は、内容を処理することなく、表示前にほとんどの HTML コメントと XML コメントをページから削除します。ただし、Internet Explorer の条件付きコメントは削除されないため、IE 固有のリソースおよびメタタグを含めることができます。
Internet Explorer の条件付きコメントは、一般に古いバージョンの IE との間で発生するブラウザの互換性問題に対処するために使用されます。条件付きコメントはページ上のどこで使用されても動作しますが、ページの <head> タグの内側に配置されることがよくあり、その場合は、バージョン固有のスタイルシートまたは JavaScript 互換性の「shim」を含めるために使用できます。
ページの <head> タグの内側に条件付きコメントを配置するには、標準の Salesforce ヘッダー、サイドバー、およびスタイルシートを無効にし、独自の <head> タグと <body> タグを追加します。
1swfobject.registerObject("clippy.codeblock-0", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17<apex:page docType="html-5.0" showHeader="false" standardStylesheets="false">
18 <head>
19 <!-- Base styles -->
20 <apex:stylesheet value="{!URLFOR($Resource.BrowserCompatibility, 'css/style.css')}"/>
21
22 <!--[if lt IE 7]>
23 <script type="text/javascript"
24 src="{!URLFOR($Resource.BrowserCompatibility, 'js/obsolete-ie-shim.js')}>
25 </script>
26 <link rel="stylesheet" type="text/css"
27 href="{!URLFOR($Resource.BrowserCompatibility, 'css/ie-old-styles.css')}" />
28 <![endif]-->
29
30 <!--[if IE 7]>
31 <link rel="stylesheet" type="text/css"
32 href="{!URLFOR($Resource.BrowserCompatibility, 'css/ie7-styles.css')}" />
33 <![endif]-->
34 </head>
35
36 <body>
37 <h1>Browser Compatibility</h1>
38 <p>It's not just a job. It's an adventure.</p>
39 </body>
40</apex:page>
Visualforce では、標準 HTML コメント内の <apex:includeScript/> などの Visualforce タグをサポートせず、評価もしません。ただし、IE 条件付きコメント内の次の表記は評価します。
- $Resource や $User などのグローバル変数
- URLFOR() 関数
条件付きコメントの使用方法の詳細は、Internet Explorer の条件付きコメントに関する Microsoft のドキュメントを参照してください。