2010-09-07 5 views
2

J'ai un peu de style comme ceci:entrée [type = texte] ne fonctionne pas dans IE

<style type="text/css"> 
input[type=text]{ 
width:300px; 
} 
</style> 

le code ci-dessus fonctionne en chrome et firefox. Pourquoi pas dans IE? J'utilise ce code dans Reporting services à la fin du fichier Reports.aspx.

Répondre

9

Il fonctionne très bien dans IE8, en supposant que le chargement dans IE7 ou IE8 mode standard (pas de bizarreries)

Modifier

Vous avez dit que vous utilisez IE8. Dans ce cas, utilisez les outils de développement (F12), localisez votre zone de texte et vérifiez quels styles sont appliqués.

Edit 2

Je ne sais pas quelle version de rapports des services que vous utilisez. Juste allé à une instance de 2000, et le gestionnaire de rapports sert des pages qui rendent en mode quirks, alors bonne chance pour obtenir beaucoup, le cas échéant, le style de travailler.

Edit 3

Vous pouvez être en mesure de forcer IE à rendre en mode IE8 en ajoutant un meta tag à la tête dans les pages ASPX. Par exemple. :

<head> 
<meta http-equiv="X-UA-Compatible" content="IE=100" > 
<!-- Rest of <head> --> 
+0

J'utilise Reporting Services dans l'instance 2005 –

+0

@niao - les outils de développement vous diront comment IE affiche la page que vous essayez de styler. Appuyez sur F12, et dans la barre de menu, il affichera le mode navigateur et le mode document. Je n'ai pas d'instance 2005 avec laquelle jouer, mais je parie que ce sera aussi en mode quirks. –

+0

oui, vous avez raison. Il rend en mode quirks. Puis-je le modifier pour le rendre correct (en mode standards IE7 ou IE8?) –

9

Quelle version d'IE?

IE6 et inférieur ne prennent pas en charge les sélecteurs d'attribut.

Il suffit d'utiliser une classe, rester simple:

input.text 
{ 
    width:300px; 
} 

<input type="text" class="text" /> 
+2

Voir http://caniuse.com/ pour plus d'informations détaillées. –

+0

@nikc - belle trouvaille, ne savait pas sur ce site! – RPM1984

+0

Eh bien, c'est IE8 et comme je l'ai écrit, c'est peut-être parce que j'utilise ce code pour personnaliser la zone de texte dans les services de reporting? –

0

Vérifiez bien que vous ne disposez pas d'un espace entre la « entrée » et « [ ». This burned me lately. A travaillé dans FF/Chrome mais pas IE.

+0

non, il n'y a pas d'espace entre eux –

0

Utilisez le script IE7-JS. (Il a été créé à l'origine pour ajouter certaines fonctionnalités de IE7 à IE6, donc le nom.)

Il peut ajouter cette fonctionnalité à IE6 et IE7. (Notez que IE9.js est le plus récent et c'est également fixes a bunch of other things dans IE comment interprète CSS.)