2010-03-17 7 views
0

je suis un programmeur débutant C#. J'ai un problème avec xhtml. Je veux vérifier que si le navigateur est IE6 ou non. Par exemple si ie6 alors div id = "div1" style = "display: block;" sinon div id = "div1" style = "display: none;"> Comment puis-je contrôler mon navigateur et utiliser la clause if dans xhtml?Comment utiliser "if clause" dans xhtml?

+0

Voulez-vous dire des commentaires conditionnels (qui est spécifique à IE, et non une fonctionnalité XHTML)? – kennytm

+1

@Kenny: La bonne chose à propos de ceux-ci est qu'ils ne sont pas non plus un balisage invalide. En ce qui concerne les fonctionnalités non spécifiées, c'était une fonctionnalité que j'aurais aimé avoir dans d'autres navigateurs. Contrairement à l'opinion populaire, tous les navigateurs non-IE ont aussi des bogues d'implémentation :) – Joey

+0

J'ai trouvé quelque chose comme ça et c'est ce que je veux: <% int BrowserStatus; BrowserStatus = Request.ServerVariables ["HTTP_USER_AGENT"]. ToString(). IndexOf ("MSIE 6.0"); if (état du navigateur> -1) { Response.Write ("1"); } autre { Response.Write ("2"); } %> –

Répondre

0

commentaires conditionnels sont plus faciles, vous pouvez également le faire côté serveur ...

<% if (HttpContext.Request.UserAgent.Contains("internet explorer 6")) //Not sure what the exact name is, need to look it up. 
{%> 
    //HTML 
<%}%> 
+0

Cela a fonctionné Paul, merci :) –

2

attribuons à votre div d'un style permanent:

<div id="div1" class="jumping-div"></div> 

Définir le style par défaut:

style1.css:

div.jumping-div 
{ 
    display:none; 
} 

créer ensuite une autre feuille de style qui redéfinira la classe:

style2.css:

div.jumping-div 
{ 
    display:block; 
} 

Ensuite, en utilisant les chèques conditionnels vous pouvez inclure une autre feuille de style:

<link href="style1.css" rel="Stylesheet" type="text/css" /> 

<!--[if IE 6]> 
    <link href="style1.css" rel="Stylesheet" type="text/css" /> 
<![endif]--> 
+0

Je le sais mais ce n'est pas ce que je cherche, je dois utiliser "else" déclaration aussi? –

+0

Je crains qu'il n'y ait pas de partie "else". Vérifiez les spécifications: http://msdn.microsoft.com/en-us/library/ms537512%28VS.85%29.aspx –

Questions connexes