Hans: Tabelle mit CSS im IE mittig ausrichten ?

Hallo !

Ich hab das Problem, daß ich im Internet Explorer
meine Tabelle mit CSS nicht mittig ausrichten kann.
In Opera und Netscape klappts.
Hier mal der code:

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="testcss.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table id="bla">
  <tr>
    <td>iugi</td>
  </tr>
</table>
</body>
</html>

Und das CSS file:

#bla {
 width : 600px;
 border : 1px solid #000000;
 margin-left : auto;
 margin-right : auto;
}

Im Internet Explorer funktioniert das nur, wenn ich
das <?xml version="1.0"?> weglasse. Aber das wäre doch dann
nicht mehr standartkonform oder ?

Ich bedanke mich schonmal !

  1. Hallo Hans,

    Im Internet Explorer funktioniert das nur, wenn ich
    das <?xml version="1.0"?> weglasse. Aber das wäre doch dann
    nicht mehr standartkonform oder ?

    Nein, das <?xml ...> ist nicht zwingendermaßen vorgeschrieben. Am einfachsten ist es in so einem Fall, den W3C-Validator zu fragen (http://validator.w3.org), der bestätigt deine Seite auch ohne <?xml ...> als XHTML-Strict-konform.

    Technisch gesehen, wieso der IE das erst "richtig" anzeigt, wenn die Angabe fehlt, kann ich nicht sagen. Liegt wohl irgendwie an diesem berühmt-berüchtigten "standards-compliant-mode".

    Grüße aus Darmstadt,
    Benjamin

    --
    Signatur? Sowas brauche ich nicht, da steht eh' meist nur Nonsens drin.
    1. Vielen Dank !
      Ich hab das Teil auch noch mal durchlaufen lassen.
      Der meckert aber auch wegen jedem sch...
      Als "strict" wurde es erst bewertet nachdemn ich die
      Leerzeichen in der Tabelle entfernt hatte..

  2. Hallo Hans,

    Ich hab das Problem, daß ich im Internet Explorer
    meine Tabelle mit CSS nicht mittig ausrichten kann.
    In Opera und Netscape klappts.

    Der Internet Explorer 4.0 und 5.x sowie 6.0 im Quirks-Mode richten die Tabelle nicht mittig aus, sie interpretieren statt dessen text-align des Elternelements.

    Siehe auch:
    http://aktuell.de.selfhtml.org/tippstricks/css/ausrichtung/

    Im Internet Explorer funktioniert das nur, wenn ich
    das <?xml version="1.0"?> weglasse. Aber das wäre doch dann
    nicht mehr standartkonform oder ?

    Nein, das wäre kein wirklich gültiges XHTML-Dokument mehr. Das Problem ist, dass der IE 6.0 nur in den "Standard Compliant Mode" versetzt wird, wenn die DOCTYPE in der _allerersten_ Zeile steht. Durch die XML-Deklaration ist das aber nicht der Fall. Daher bleibt der IE im Quirks Mode und interpretiert das ganze falsch. Die IEs 4.0 und 5.x machens übrigens immer falsch.

    Grüße,

    Christian

    --
    Ich wünsche allen frohe Weihnachten!
    Ich bitte darum, dass ein Themenbereich (BARRIEREFREIHEIT) eingerichtet wird.
    1. Hallo Christian,

      Nein, das wäre kein wirklich gültiges XHTML-Dokument mehr.

      Naja, ich habe nicht die Zeit, mir das komplette Regelwerk direkt beim W3C durchzulesen, aber SelfHTML sagt jedenfalls folgendes: "Das allererste, was am Anfang einer XHTML-Datei notiert werden sollte, ist eine so genannte XML-Deklaration." (http://selfhtml.teamone.de/html/xhtml/unterschiede.htm#xml_deklaration)

      Dann wundert mich auch nicht mehr, wieso es der Validator dann trotzdem ohne Meckern auch ohne die XML-Deklaration als Strict XHTML durchlässt.

      Oder liege ich da falsch?

      Grüße aus Darmstadt,
      Benjamin

      --
      Signatur? Sowas brauche ich nicht, da steht eh' meist nur Nonsens drin.
    2. Hi!

      Nein, das wäre kein wirklich gültiges XHTML-Dokument mehr.

      Doch: http://www.w3.org/TR/xhtml1/#strict:
      » An XML declaration is not required in all XML documents; however XHTML document authors are strongly encouraged to use XML declarations in all their documents. Such a declaration is required when the character encoding of the document is other than the default UTF-8 or UTF-16 and no encoding was determined by a higher-level protocol. «

      Gruß Herbalizer

      1. Hallo Herbalizer,

        Doch: http://www.w3.org/TR/xhtml1/#strict:
        [...]

        Tja, so geht's, wenn man mal nicht nachschaut - ich dachte immer, die XML-Deklaration wird für alle XML-Dokumente gebraucht, und XHTML ist ja XML... Das Denken soll man ja bekanntlich den Pferden überlassen, ...

        Frohes Neues,

        Christian

        --
        Ich wünsche allen ein frohes neues Jahr 2003!
        Ich bitte darum, dass ein Themenbereich (BARRIEREFREIHEIT) eingerichtet wird.
        Hmm, was könnte ich sonst noch in die Signatur schreiben?
      2. Hallo!

        » An XML declaration is not required in all XML documents; however XHTML document authors are strongly encouraged to use XML declarations in all their documents. Such a declaration is required when the character encoding of the document is other than the default UTF-8 or UTF-16 and no encoding was determined by a higher-level protocol. «

        Siehe [pref:t=33508&m=182229]

        emu
        [...]

  3. Hallo!

    <?xml version="1.0"?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

    Ein Hinweis aus der Spezifikation (allerdings nur »informative«):

    If this is not possible, a document that wants to set its character
      encoding explicitly must include both the XML declaration an encoding
      declaration and a meta http-equiv statement.
      http://www.w3.org/TR/xhtml1/#C_9

    Zur anderen Diskussion eine Stelle, die »normative« ist:

    An XML declaration is not required in all XML documents; however XHTML
      document authors are strongly encouraged to use XML declarations in all
      their documents. Such a declaration is required when the character
      encoding of the document is other than the default UTF-8 or UTF-16 and
      no encoding was determined by a higher-level protocol.
      http://www.w3.org/TR/xhtml1/#strict

    Ob du in deinem Fall also eine XML-Deklaration brauchst, hängt davon
    ab, ob der Browser durch Informationen in einem anderen Protokoll zu
    dem Charset kommen kann.

    emu
    [...]