2009-09-23 18 views
0

Mon application ASP.Net ne sort correctement que si je la prévisualise dans Internet Explorer mais c'est la chose la plus laide que je vois dans Firefox, Chrome ou Safari.Les pages ASP .Net ne s'affichent pas correctement sur les autres navigateurs

Comment cela peut-il être, et comment cela peut-il être resolved.Helppppppppp

+0

Pouvez-vous poster un exemple de code, une capture d'écran ou un lien vers la page concernée? – belugabob

+0

De quelle version d'asp.net parlons-nous? –

Répondre

0

Je vous conseille l'utilisation FireFox comme navigateur de développement, tout en testant dans IE et Chrome ainsi.

En plus d'être plus de normes, il dispose d'outils web de qualité supérieure à l'intérieur, comme Firebug, yslow et Web Developer.

+0

Sans oublier Opera et Safari, et l'absurde nécessité continue de tester dans IE6 – spender

+0

@spender, il est préférable de tester dans ceux-ci aussi, mais vous seriez dans une bonne situation si cela fonctionne bien avec les 3 grands comme ça va probablement aussi bien dans ceux-là. Cela dépend aussi un peu de votre marché. Mais vous avez absolument raison, cela peut simplement dépendre des ressources. – dove

+0

Votre idée est correcte de tester dans Firefox bu la chose est même si je teste dans Firefox il y a certains contrôles qui ne sont pas correctement rendus dans Firefox en premier lieu mais quand vous courez dans IE ils sortent parfaits .... Par exemple les contrôles de menu sortent terriblement – renilative

0

La compatibilité croisée n'est malheureusement pas triviale. C'est un grand sujet avec beaucoup de matériel consacré à cela. Comme suggéré par dove, il est préférable d'utiliser un navigateur (relativement) conforme aux normes pour faire votre travail de développement, par exemple. FF, Opera, Chrome ou Safari et ensuite tweak pour le faire fonctionner dans IE 6/7/8 après.

Je recommanderais de ne pas utiliser l'un des thèmes intégrés de Microsoft, etc., et de respecter le plus possible le style CSS. La facilité de rendre votre site compatible avec les navigateurs dépendra, dans une large mesure, de vos connaissances en HTML et CSS, mais je recommande de commencer par un bon framework CSS ou au moins une bonne réinitialisation CSS (qui supprime le style par défaut spécifique au navigateur et permet vous commencez avec une base commune). Essayez de jeter un coup d'œil à Tripoli, ce qui vous donne un standard CSS croisé commun (une réinitialisation plus la reconstruction des styles par défaut).

La manière habituelle de modifier le CSS pour IE est d'utiliser des commentaires conditionnels spécifiques IE pour inclure un fichier CSS supplémentaire uniquement pour IE, par exemple: -

<link rel="stylesheet" href="http://tempuri.org/styles.css"> 
<!--[if IE]> 
    <link rel="stylesheet" href="http://tempuri.org/styles.ie.css"> 
<![endif]--> 

Vous pouvez également inclure différentes feuilles de style pour différentes versions de IE, voir here.

1

Quel type DocType utilisez-vous? Si vous utilisez une transition, IE sera rendu en mode quirks. Forcer un DocType de strict.

Consultez ce lien here pour une bonne explication de DocTypes et le lien this pour une explication d'une des principales façons dont le type de document affecte la mise en page: les modèles de boîte.

1

Avez-vous comparé la source des pages dans les différents navigateurs? Sont-ils identiques ou y a-t-il des différences majeures? Si ce n'est pas le cas, alors vous devrez travailler sur votre CSS - et pour cela, il y a peu de meilleurs outils que Firefox et Firebug. Si la source des pages est différente, alors vous êtes victime d'une fonctionnalité ASP.NET qui vérifie votre agent utilisateur par rapport à une liste de Browser Capabilities ou Browser Definition files - et dans les versions antérieures du framework, elles étaient terriblement out of date - ce qui est rendu comme un <div> dans IE sortirait comme une seule cellule <table> dans Firefox. Depuis ASP.NET 2.0, vous avez également pu modifier le comportement des contrôles avec des adaptateurs de contrôle. Par exemple, le CSS Control Adapters affiche des divs stylisés pour la plupart des contrôles tabulaires (connexion, enregistrement, répéteurs, etc.) - ce qui peut encore être ciblé sur des navigateurs spécifiques.

+0

Ce serait ma première estimation. S'il exécute ASP.Net 1.1, c'est sûrement le problème. Il pourrait encore être même si c'est 2.0. –

+0

Je cours ASP. Net 2.0 – renilative

Questions connexes