2009-11-03 4 views
12

En utilisant les propres outils de développement de ie8, il affiche la valeur d'alignement de texte des éléments comme à gauche, mais il est rendu centré en mode standard ie8. Dans les quirks ou ie7 standards, tout est correctement aligné à gauche.Pourquoi est-ce que ie8 centre le texte lorsque l'alignement de texte est réglé sur gauche?

Screenshot of IE Developer tools illustrating the issue

+0

À quoi cela ressemble-t-il dans les autres navigateurs? – AnonJr

+0

Au lieu d'une image, votre meilleur pari serait d'afficher un exemple SSCCE. La quantité minimale de code que vous (et nous) devons reproduire le même problème. Le code peut être posté en copypassant, en le sélectionnant et en appuyant sur le bouton "code" (image binaire). – BalusC

+0

Dans tous les autres navigateurs que j'ai testés (opera, fx 2-3.5, chrome, safari), il hérite correctement de text-align: left de la classe appliquée à la table. L'image était simplement pour montrer que les outils de développement d'ie8 indiquent qu'elle devrait s'aligner à gauche mais pas encore. Comme pour assez de code pour l'illustrer, voir: http://pastie.org/685460 – Gidgidonihah

Répondre

23

Une très élégante solution de haslayout.net:

th { 
    text-align: inherit; 
} 
0

text-align est héréditaire. Est-ce que le tag parent (TABLE, je pense) centre le texte?

+1

La table a un paramètre de classe text-align à gauche. Le n'hérite pas cela. – Gidgidonihah

0

IIRC, l'élément <th> va centrer et mettre en gras le texte en raison du style interne du navigateur. C'est une grande raison pour laquelle j'ai récemment commencé à utiliser des feuilles de réinitialisation CSS dans tous mes projets.

+0

Cela pourrait être le problème. ie8 n'hérite pas de l'étiquette de la table. J'ai besoin d'énoncer spécifiquement la règle pour que ça fonctionne dans ie8. – Gidgidonihah

1

Essayez d'ajouter ceci à votre étiquette de tête

<style>th{text-align: left; font-weight:normal;}</style> 

Si vous avez d'autres tableaux de la page que vous ne voulez pas être affecté par ce changement, vous pouvez appliquer une classe à votre table et de style les éléments de cette table.

... <table class='work_in_IE'> ... 


<style type="text/css">.work_in_IE th{ text-align: left; font-weight:normal;}</style> 
0

si vous ne pouvez pas obtenir la réponse que vous pouvez essayer e {float: left; } ça marche bien pour moi.

Questions connexes