Hallo Thomas,
Es wird also doch eine andere Angabe mit center in HTML oder CSS geben.
Du hattest Recht, allerdings trat ein "Effekt" auf/ein, den ich so nicht erwartet hätte: Der IE scheint eine Ausrichtung, solange diese nicht aufgehoben ist, auf alle in der Verschachtelung tiefer liegende Elemente anzuwenden und nicht nur auf das nächst liegende Element.
Hört sich komisch an, darum erkläre ich es noch mal anders:
Ich habe die Tabelle in Deinem Beispiel mit <div align="center"> eingeschlossen. Bisher (im _NICHT_ standards-compliant mode) bezog der IE die Center-Angabe im <div> nur auf die gesamte Tabellenausrichtung, nicht auf den Inhalt in den Tabellenzellen.
Im standards-compliant mode wendet der IE diese Ausrichtung solange an, bis diese "beendet" wird, sprich das <div> geschlossen wird, oder eine neue Ausrichtung ausgewiesen wird (also eine Verschachtelung angewendet wird). In diesem Beispiel werden also sowohl die gesamte Tabelle als auch die Tabelleninhalte/Zellen zentriert.
Ob dies nur bei Ausrichtungen oder auch anderen Formatierungen der Fall ist, kann ich (noch) nicht sagen...
Im Beispiel habe ich die zweite Zelle mal rechtsseitig ausgerichtet, die gesamte Tabelle in ein <div align="center"> gesetzt und zur besseren Betrachtung die tabellenbreite auf 50% gesetzt.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd">
<html>
<head>
<title>Test by TM</title>
</head>
<body onload="if(document.compatMode && document.compatMode=='CSS1Compat')alert('IE 6 im standards-compliant mode')">
<div align="center">
<table border="1" width="50%">
<tr>
<td>1</td><td align="right">2</td><td>3</td>
</tr>
</table>
</div>
</body>
</html>
Die Fragestellung hat sich nun geändert: Sie lautet nicht mehr, weshalb der IE im standards-compliant mode Tabellenzellen per default zentriert, sondern weshalb der IE Ausrichtungen nicht nur beim Nachfolge-Element sondern, auch auf dessen Nachfolge-Elemente anwendet?
Viele Grüße...
Alex - langsam kommt Licht ins Dunkel - (;