2013-08-19 30 views
1

我有一個jsp文件,並且在jsp的最開始我有以下幾行代碼。這些行在jsp文件中指示了什麼?:

<!--[if lt IE 7]><html lang="en" class="no-js lt-ie10 lt-ie9 lt-ie8 lt-ie7" xml:lang="en" xmlns:fb="http://www.facebook.com/2008/fbml"> <![endif]--> 
<!--[if IE 7]><html lang="en" class="no-js lt-ie10 lt-ie9 lt-ie8" xml:lang="en" xmlns:fb="http://www.facebook.com/2008/fbml"> <![endif]--> 
<!--[if IE 8]><html lang="en" class="no-js lt-ie10 lt-ie9" xml:lang="en" xmlns:fb="http://www.facebook.com/2008/fbml"> <![endif]--> 
<!--[if IE 9]><html lang="en" class="no-js lt-ie10" xml:lang="en" xmlns:fb="http://www.facebook.com/2008/fbml"> <![endif]--> 
<!--[if gt IE 9]><!--><html lang="en" class="no-js" xmlns="http://www.w3.org/1999/html" xml:lang="en" xmlns:fb="http://www.facebook.com/2008/fbml"> <!--<![endif]--> 

如果i remove the above lines then page is not rendered in IE but it renders in FF。請有人解釋一下上面的內容是什麼?

回答

0

它不需要處理JSP,它只被IE「理解」,它是微軟的一個非標準添加,如果你只有IE的代碼,那麼你使用條件HTML包含:

<!--[if lt IE 7]> ... <![endif]--> 

其他瀏覽器將看不到代碼,因爲他們將「看」是一個標準的HTML註釋<!-- ... -->

的條件語句[if lt IE 7][if IE 8]等有點不言自明:[if lt IE 7]的意思是「如果IE版本是低於7,然後添加此「或[if IE 8]」,如果IE瀏覽器rsion是8然後加上這個「

+0

感謝您的回覆。下面的行表示什麼? – user1016403

+0

」no-js lt-ie'0 lt-ie9 lt-ie8 lt-ie7「只是CSS類的選擇器,這只是意味着這些類將被應用。例如,行<! - [if IE 9]> morgano

0

他們被稱爲有條件的評論。它用於檢測Windows Internet Explorer的版本

獲取詳細信息here

+0

感謝您的回覆。下面的行表示什麼? – user1016403

0

下面的代碼表示什麼?

<html lang="en" class="no-js lt-ie10 lt-ie9 lt-ie8 lt-ie7" 
     xml:lang="en" xmlns:fb="facebook.com/2008/fbml"> 

這意味着:

  • 此HTML文檔英寸

  • 的 「語言」 的文檔內容爲英語

  • 以下(樣式)類應用到文件... 「無JS LT-IE10 LT-IE9 LT-IE8 LT-IE7」 。這些類可能在樣式表中定義和/或在頁面中使用的JavaScript中引用。

  • 如果您在標記名稱中看到「fb」作爲XML名稱空間前綴,則表示「facebook.com/2008/fbml」。這看起來像一個Facebook定義的XML模式。