Wie kann ich "display: block" an einem & lt; td & gt; in IE?

Gibt es irgendetwas, was ich tun kann, um die IE-Anzeige Tabelle-Zellen als eigentliche Bausteine?

Angesichts dieser Stil:

table,tbody,tr,td,div {
  display: block;
  border: 1px solid #0f0;
  padding: 4px;
}

Und das html:

<table>
  <tbody>
    <tr>
      <td>R1C1</td>
      <td>R1C2</td>
      <td>R1C3</td>
    </tr>
  </tbody>
</table>

<div>
  <div>
    <div>
      <div>R1C1</div>
      <div>R1C2</div>
      <div>R1C3</div>
    </div>
  </div>
</div>

Die Tabelle macht genau das gleiche wie die verschachtelten divs im Firefox und Safari/Chrome. Aber im Internet Explorer (8) die Eigenschaft display: block hat keine Wirkung. Die Tabelle macht genau so, wie wenn ich nicht, die diese Eigenschaft festgelegt.

Mein Hauptproblem ist, dass die Zellen nicht brechen; Sie alle render auf einer Linie. (Die tbody und tr Elemente erhalten keine Grenzen noch eine Polsterung. Das ist nicht ein problem für mich jetzt, aber.)

Habe ich nicht gefunden, keine Informationen über das problem bei der Suche. Kompatibilität charts auf quirksmode und anderswo besagt, dass der IE unterstützt display: block da v. 5.5. Jede Diskussion auf einem Tisch-display-Probleme zu sein scheint, wenn das Gegenteil tun - geben-nicht-Tisch-Elemente eine der display: table-* Eigenschaften.

Also noch einmal, gibt es irgendetwas, was ich tun kann, um die IE-render-Tabelle Zellen als block?

(Die eigentliche Tabelle ist wirklich eine Tabelle mit tabellarischen Daten. Ich möchte es so halten, und restyle es dezent.)

Kommentar zu dem Problem
Warum auf der Erde würden Sie wollen, zu tun? Kommentarautor: Kyle
Ich bin restyling es zu einem barchart, wo jede Zeile wird ein horizontaler Balken mit einer Breite genommen, die vom Inhalt einer Zelle, mit den restlichen td:s aufgereiht auf der linken Seite. Funktioniert einwandfrei im Firefox, Safari und Chrome. Kommentarautor: Daniel
Ich glaube, Sie wäre besser ignorierte meine Antwort. Stattdessen sollten Sie verwenden, Javascript/jQuery, um dynamisch erstellen Sie ein Balkendiagramm aus Ihrer Tabelle Daten. Wie eine Kombination von dieser und dieser. Ich glaube nicht, dass Sie wahrscheinlich einen Weg finden, Sie zuverlässig machen, die die <table>s so Verhalten, wie Sie es möchten. Kommentarautor: thirtydot
Nochmals vielen Dank. Das ist wohl wahr. Ich bin dabei einige Teil der transformation durch jQuery sowieso. Ich ging für die Lösung der Manipulation der vorhandenen DOM-Objekte anstatt Sie zu ersetzen, da schien es sauberer, und funktionierte gut - bis ich kam zurück, um den PC bei der Arbeit und IE ... naja. Ich glaube, ich sollte wissen, indem jetzt nie Polieren Sie die details in jedem browser testen, bevor die Grundlagen in allen. Kommentarautor: Daniel
Realen Fall: Chris Coyier ist clever responsive Tabelle mit Daten Technik funktioniert nicht in IE 9 ohne Hilfe. Kommentarautor: Jordan Gray

InformationsquelleAutor der Frage Daniel | 2011-02-23

Schreibe einen Kommentar