Tobias Unger: Tabellen: %-Angaben relativ zu was?

Hallo,

ich habe ein ziemlich großes Problem und wäre für eine Antwort sehr dankbar:

Ich verwende (keine Layout-)Tabelle, die eine Breite von 100% mit CSS zugeortnet bekommt.
Opera und firefox stellen das ganz normal da, der IE scheint die 100% relativ zur ganzen Seite zu sehen und da es auch noch eine Navigationsleiste gibt, funktioniert das ganze nicht mehr richtig.

Hat da irgendjemand eine Idee, was ich machen könnte, ausser z.B. die Tabelle nur 80% breit zu machen?

Vielen Dank im Vorraus,
Tobias Unger

PS.: Ihr könnt es euch ja mal auf <tobias-unger.de/tobiasunger> ansehen!

  1. Tach,
    Also, nach meinem Verständnis ist das so:
    Die Angabe "100%" bezieht sich immer auf die größe des umschliessenden Elementes (sofern dies eine Größe besitzt).
    Wenn das umliegende Element keine größe besitzt, gehts eine Ebene höher, bis eine Größenangabe gefunden wird. Wenn man bei <body> angekommen ist, und das immer noch keine Größe hat, geht man von der Seitenbreite aus.

    Beispiel:
    <html>
       <table style="width: 100%">
       ...

    Hier ist die Tabelle genauso breit wie die ganze Seite (body).

    Beispiel2:

    <table style="width: 200px">
      <tr><td><table style="width: 100%">
       ...
      Hier bezieht sich 100% auf die Grösse der umliegenden Tabelle,
      also ist die innere Tabelle  200 px gross.

    Beispiel3:
    <body>
    <table>
       <tr><td><table>
          <tr> <td><table style="width: 100%">

    Hier gibts keine Größenangabe, nach der sich die "100%" richten könnten, also bzeihen sich 100% auf die Seitenbreite.

  2. Hallo,

    http://tobias-unger.de/tobiasunger
    <?xml version="1.0" ?>

    ^Hierdurch schickst Du den IE auch in Version 6 in den quirks-mode. Da kümmert er sich nicht um Standards. Lass das weg. Im Browser ist das, was Du da gemacht hast _kein_ XML, sondern xHTML.

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    ...

    Btw. Da sind auch im HTML einige grobe Schnitzer (Listenverschachtelung usw.) http://validator.w3.org/check?uri=http%3A%2F%2Ftobias-unger.de%2Findex.php%3Fpage%3Dtobiasunger&charset=(detect+automatically)&doctype=(detect+automatically)&ss=1

    viele Grüße

    Axel

    1. Axel,

      <?xml version="1.0" ?>
         ^Hierdurch schickst Du den IE auch in Version 6 in den quirks-mode. Da kümmert er sich nicht um Standards. Lass das weg.

      Auch keine gute Idee. Das kollidiert dann mit
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />

      Wenn in einer XML-Datei nicht in der XML-Deklaration eine andere Zeichencodierung angegeben wird, gilt UTF-8.

      Das heißt, ohne XML-Deklaration MUSS eine XHTML-Datein in UTF-8 codiert werden.

      Die Alternativen wären Quirksmode für IE oder bei HTML 4.01 bleiben.

      Gunnar

      --
      I never intended HTML source code (the stuff with the angle brackets) to be seen by users. […] To my surprise, people quickly became familiar with the tags and started writing their own HTML documents directly. (Tim Berners-Lee in Weaving the Web)
      1. Hallo,

        Auch keine gute Idee. Das kollidiert dann mit
        <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />

        Nein.

        Wenn in einer XML-Datei nicht in der XML-Deklaration eine andere Zeichencodierung angegeben wird, gilt UTF-8.

        Der Browser interpretiert diese Datei aber _nicht_ als XML, sondern als HTML. Das sagte ich aber bereits.

        viele Grüße

        Axel

        1. Axel,

          Wenn in einer XML-Datei nicht in der XML-Deklaration eine andere Zeichencodierung angegeben wird, gilt UTF-8.
          Der Browser interpretiert diese Datei aber _nicht_ als XML, sondern als HTML. Das sagte ich aber bereits.

          Es _ist_ aber eine. Mit widersprüchlichen Angaben. [XHTML 1.0 §C.1]

          Gunnar

          --
          I never intended HTML source code (the stuff with the angle brackets) to be seen by users. […] To my surprise, people quickly became familiar with the tags and started writing their own HTML documents directly. (Tim Berners-Lee in Weaving the Web)
          1. Hallo,

            Der Browser interpretiert diese Datei aber _nicht_ als XML, sondern als HTML. Das sagte ich aber bereits.
            Es _ist_ aber eine. Mit widersprüchlichen Angaben.

            Ja, für einen XML-Parser und mit Content-Type: application/xml oder application/xhtml+xml wäre es eine XML-Datei. Dann wäre sie ohne XML-Prolog nicht gültig.

            Für einen HTML-Parser und mit Content-Type: text/html ist es aber keine.

            Lass einfach mal folgendes:

            <!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>XHTML</title>
            <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
            </head>
            <body>
            <p>Text XHTML mit äöüÄÖÜ.</p>
            </body>
            </html>

            durch http://validator.w3.org laufen.

            viele Grüße

            Axel