2012-01-23 30 views
5

Bahar ve .jspx web sayfalarını kullanarak bir web uygulaması oluşturmak istiyorum.Jspx dosyaları ve koşullu yorumlar

Soruma göre jspx'de IE için koşullu yorumlara nasıl yazabilirim? Yorumlanmıyor gibi görünüyorlar.

<!--[if lt IE 9]> 
    <link rel="stylesheet" type="text/css" href="css/style.css" /> 
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 

Ayrıca web sayfalarının HTML5 uyumlu olmasını istiyorum.

Bazı yöntemler denedim ancak IE9'da uyumsuzluk sorunları var (başlık ve bölümü tanımayacak gibi görünüyor).

Düzenleme:

İşte başım etiketi

<meta content="text/html" charset="UTF-8" http-equiv="content-type" /> 
<link rel="stylesheet" type="text/css" href="css/style.css" /> 
<!--[if lte IE 9]> 
<link rel="stylesheet" type="text/css" href="css/style_IE8.css" /> 
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 

olduğu Ama IE9 altında kaynağında bakarsanız ben html5shiv bağlantılar ve benim ikincil css görmüyorum.

cevap

7

JSP 2.0 spesifikasyonu bölüm 1.5.2 göre, jsp belgelerde yapılan yorumlar dikkate alınmaz: JSP belgelerde

Yorumlar XML sözdizimi kullanın şöyle:

<!-- comments ... ->

İçeriğin gövdesi tamamen yok sayılır. JSP belgelerinde 'daki yorumlar dokümantasyon amacıyla ve JSP sayfasının "yorumlanması" bölümleri için kullanılabilir. Aşağıdaki kod çalışırsa

Bölüm 6.2.2 senin USECASE adapte edilebilir jsp:text ve CDATA bölümleri kullanarak bir örnek gösterilmektedir, deneyin:

<jsp:text><![CDATA[<!--[if lte IE 9]>]]></jsp:text> 
... 
<jsp:text><![CDATA[<![endif]-->]]></jsp:text> 
+1

Güzel !!! Bu çalışıyor. Teşekkürler. – Tony

+0

Oh GOD, XML, neden ??? CDATA bloklarını jsp: text CDATA içine bir hata olmadan koyabilir misiniz? –

0

HTML 5 uyumluluğu için htmlshiv ithalatı kullanılarak doğrudur. Başlık etiketlerinde şartlı ithalat yaptığınızdan emin olun. Bunun jstl ile ilgisi yok.

<head> 
    //Other imports 
    <!--[if lt IE 9]> 
     <link rel="stylesheet" type="text/css" href="css/style.css" /> 
     <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
    <![endif]--> 
    </head> 
+1

Düzenlememe bir göz atın. Bu çalışmıyor. – Tony

3

girişimleri geniş bir miktar sonra bulundu Yorum sembolleri için ASCII kodlarının kullanılması .jspx sayfalarında çok güzel çalıştı. Bu kod bit deneyin: oluşturulan HTML görüntülemek eğer

&lt;&#33;&#45;&#45;[if IE]> 

    <link rel="stylesheet" type="text/css" href="css/screenIE.css" /> 

&lt;&#33;[endif]--> 
+0

Bu harika çalışıyor. Bahşiş için teşekkür ederim! – boomboomboom

0

Eh, anlayacak, böylece, koşullu açıklamada şeyler dışarı kaçmak olacağını JSTL işe yaramaz:

<!--[if IE 9]&gt;&lt;div id=&quot;ie-9&quot;&gt;&lt;![endif]--> 

Yani Abhi, jstl'e şartlı kısmı yalnız bırakması gerektiğini söyle, onu ayrıştırmamalarını söyle. Jstl bunu görmezden gelmeyecek, çünkü onu içine koydun.