Mozilla-Fehler?
MudGuard
- browser
Hi,
hab gerade mal etwas mit tbody und borders gespielt.
Um deutlicher zu sehen, was passiert, hab ich verschiedene Farben genommen (im Endeffekt werden alle Borders schwarz, aber dann sieht man den Effekt nicht mehr...)
Ok, der IE ignoriert die tbody-borders (wahrscheinlich ignoriert er die tbody komplett) wie ich fast erwartet hatte,
der Opera stellt es wie erwartet korrekt dar (ok, ich bin mir nicht sicher, ob die horizontale border farblich zum oberen oder unteren tbody passen müßte)
Aber das Ergebnis vom Mozilla (1.4a) hat mich doch etwas überrascht (hier der aufs wesentliche zusammengekürzte Screenshot, dabei ist auch die eine Zeile kaputtgegangen. Es geht mir hier NUR um die Rahmenfarben!):
<img src="http://temp.andreas-waechter.de/tbody.png" border="0" alt="">
Der Quelltext sieht so aus (ebenfalls aufs wesentliche gekürzt):
<table class="bordered">
<caption>Die Bestandteile meines Radls</caption>
<tbody style="border:3px solid red;">
<tr><th>Rahmen</th><td>Marke: unbekannt, 66er Stahlrahmen (CrMo4) mit zusätzlichem Mittelrohr</td></tr>
<tr><th>Bremse vorne</th><td>Magura HS 33</td></tr>
<tr><th>Bremse hinten</th><td>Magura HS 33</td></tr>
</tbody>
<tbody style="border:3px solid black;">
<tr><th>Reifen</th><td>Schwalbe Marathon/Continental Top Touring (je nachdem, was grade hergeht...)</td></tr>
[...]
</tbody>
</table>
Und hier die Seite: http://www.andreas-waechter.de/Fahrrad/Fahrrad.html
Sieht für mich nach einem Bug im Mozilla aus...
cu,
Andreas
Hallo Andreas,
Der Mozilla scheint gar keine Rahmen für tbody zu unterstüzen.
Wenn Du mal das border-collapse raus nimmst, siehst Du das auch.
Allerdings scheint er die Rahmen für tbody bei border-collapse:collapse irgendwie mit einzubeziehen.
Grüße
Daniel
Hi,
Der Mozilla scheint gar keine Rahmen für tbody zu unterstüzen.
Wenn Du mal das border-collapse raus nimmst, siehst Du das auch.
Wenn er keine Rahmen für tbody unterstützen würde - woher kommen dann die bunten Rahmen?
Die sind ja direkt in den tbody definiert...
cu,
Andreas
Hallo,
Die sind ja direkt in den tbody definiert...
Mach mal Dein externes CSS raus und staune.
Der Bug tritt nur im zusammenhang mit border-collapse:collapse auf.
Ein Bug ist es aber trozdem. --> Such mal bei Bugzilla und melde das da, so du nicht fündig wirst.
Grüße
Daniel
Hi,
Der Bug tritt nur im zusammenhang mit border-collapse:collapse auf.
Seh ich anders.
Ohne das border-collapse tritt ein anderer Bug auf, nämlich daß die tbody-Borders nicht angezeigt werden.
cu,
Andreas
Hallo,
Ohne das border-collapse tritt ein anderer Bug auf, nämlich daß die tbody-Borders nicht angezeigt werden.
Nugut, ich habe halt vermutet, dass es gar nicht vorgesehen war, die border Eigenschaft bei tbody irgendwie zu berücksichtigen ;-)
Grüße
Daniel
Hi!
Nugut, ich habe halt vermutet, dass es gar nicht vorgesehen war, die border Eigenschaft bei tbody irgendwie zu berücksichtigen ;-)
Wäre ein bisschen sinnlos, schliesslich ist tbody dazu gedacht Tabellenzeilen zu gruppiren. Also ist es sinnvoll für diese Gruppierungen auch eine optische Kennzeichnung zu ermöglichen!!!
Allerdings ist der einzige Browser, der eine solche Gestalltung von tbody tatsächlich implementiert hat, Amaya zu sein. IE6,Mozilla1.2.1,Konqueror3.1.1 und Opera7 können es nicht, Amaya7 kann es. Amaya ist auch der einzige Browser der tr formatiert.
Gruß Herbalizer
Hallo,
Wäre ein bisschen sinnlos, schliesslich ist tbody dazu gedacht Tabellenzeilen zu gruppiren. Also ist es sinnvoll für diese Gruppierungen auch eine optische Kennzeichnung zu ermöglichen!!!
Das ist auch möglich.
Nur border/margin/padding kann man nicht angeben. Hintergrundfarbe o.ä. durchaus.
Grüße
Daniel
hi
Sieht für mich nach einem Bug im Mozilla aus...
für mich auch
gruß
bjb
Hi,
hab gerade mal etwas mit tbody und borders gespielt.
Nochwas, was mir in dem Zusammenhang aufgefallen ist:
Mozilla ändert selbständig die Dokumentstruktur.
Er fügt um Tabellenzeilen, die nicht bereits in thead, tbody, tfoot stehen, grundsätzlich ein tbody ein
(plötzlich hatten Tabellen, bei denen ICH kein tbody angegeben hatte, eine border wie ich sie für tbody eingestellt hatte)
Ok, bei HTML 4.01 ist das ja auch ok:
<!ELEMENT TABLE - -
(CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)>
<!ELEMENT TBODY O O (TR)+ -- table body -->
Es muß dort mindestens einen tbody geben (dessen tags sind aber optional), ok, Mozillla fügt die "unsichtbaren" tags sichtbar ein (sieht man auch in der Quelltextansicht...).
Aber bei XHTML 1.0 sieht das etwas anders aus:
<!ELEMENT table
(caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
Hier sind explizit tr ohne tbody erlaubt.
Bei XHTML ist das Einfügen von tbody daher eine echte Strukturänderung - und das sollte m.E. nicht gemacht werden...
cu,
Andreas
Hallo, Andreas,
Bei XHTML ist das Einfügen von tbody daher eine echte Strukturänderung - und das sollte m.E. nicht gemacht werden...
So wie ich http://bugzilla.mozilla.org/show_bug.cgi?id=30378#c59 ff. verstehe, wird XHTML als text/html (Kompatibilitätsrichtlinien) diesbezüglich wie HTML 4 behandelt. Mit XHTML als application/xhtml+xml oder anderen einem XML-Datentyp sollte die Strukturänderung nicht auftreten.
Grüße,
Mathias
Hallo,
Es muß dort mindestens einen tbody geben (dessen tags sind aber optional), ok, Mozillla fügt die "unsichtbaren" tags sichtbar ein (sieht man auch in der Quelltextansicht...).
Nein, in der Quelltextansicht sieht man das nicht. Ich würde mal nachgucken, ob da bei Dir nicht wirklich ein tbody im Quelltext steht.
Oder meinst du, dass Mozilla aus
<table>
<tr></tr>
<tr></tr>
<tbody>
<tr></tr>
<tr></tr>
</tbody>
</table>
<table>
<tbody>
<tr></tr>
<tr></tr>
</tbody>
<tbody>
<tr></tr>
<tr></tr>
</tbody>
</table>
macht?
Das habe ich zwar nicht überprüft, wäre aber wohl nur eine Fehlerkorrektur:
<!ELEMENT table
(caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
(tbody+|tr+) ist etwas anderes als (tbody|tr)+
Grüße
Daniel
Hi,
Nein, in der Quelltextansicht sieht man das nicht. Ich würde mal nachgucken, ob da bei Dir nicht wirklich ein tbody im Quelltext steht.
Ich habe bisher genau bei einer einzigen Tabelle (die, die ich gestern hier vorstellte) tbody tatsächlich selbst hingeschrieben.
Aber wann immer ich Quelltext im Mozilla angucke, hat die Tabelle ein tbody-Element, egal auf welcher meiner Seiten.
Und die sind alle XHTML, und alle zeigten gestern die Border, nachdem ich tbody eine border verpaßt hatte...
Oder meinst du, dass Mozilla aus
<table>
<tr></tr>
<tr></tr>
<tbody>
<tr></tr>
<tr></tr>
</tbody>
</table>
nein. Das meine ich nicht.
Er macht aus
<table>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
</table>
fehlerhafterweise
<table>
<tbody>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
</tbody>
</table>
<!ELEMENT table
(caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
(tbody+|tr+) ist etwas anderes als (tbody|tr)+
ich weiß, daß das ein Unterschied ist.
cu,
Andreas
Hallo,
Aber wann immer ich Quelltext im Mozilla angucke, hat die Tabelle ein tbody-Element, egal auf welcher meiner Seiten.
Und die sind alle XHTML, und alle zeigten gestern die Border, nachdem ich tbody eine border verpaßt hatte...
Bei meinem neusten Mozilla sehe ich in der Quelltextansicht auch keine Änderungen, dafür aber, wenn ich den DOM-Parsebaum ausgebe (http://home.t-online.de/home/dj5nu/js-dom-nodelisting.html).
Wenn ich das Script auf folgendes Markup anwende:
<table><tr><td>bla</td></tr></table>
Ist die Ausgabe gekürzt wie folgt:
Egal ob HTML 4.01 oder XHTML 1.x als text/html. firstChild.nodeName des table-Knotens ist also tbody.
Zwar wäre Daniels Beispiel invalides XHTML und deshalb liegt die Vermutung der Fehlerkorrektur nahe, aber hier wird wie gesagt XHTML als text/html genauso wie HTML behandelt, und das hat nichts mit Fehlerkorrektur zu tun. Bei XHTML als application/xhtml+xml findet natürlich keine Ergänzung von vorhandenen, aber unsichtbaren Elementen statt.
Grüße,
Mathias
Hi,
Bei meinem neusten Mozilla sehe ich in der Quelltextansicht auch keine Änderungen, dafür aber, wenn ich den DOM-Parsebaum ausgebe
Stimmt, in der "normalen" Quelltextansicht baut er es nicht ein.
Ich selektier normalerweise den mich interessierenden Teil und mach dann "View Selection Source" - und da sind die nicht-vorhandenen tbody drin.
Und eine Formatierung von tbody wirkt sich auf alle Tabellen aus...
cu,
Andreas