Ich versuche, Spalten in einer Tabelle basierend auf Benutzeroptionen während der Laufzeit zu verbergen/anzuzeigen. I definiert zwei CSS-Klassen:Kann man Tabellenspalten verbergen/anzeigen, indem man die CSS-Klasse nur für das col-Element ändert?
.hide { visibility: collapse; }
.show { visibility: visible; }
ich diese Stile auf dem <col>
Element zu setzen versucht, entsprechend der Spalte I verstecken wollen/show:
<table>
<thead>
<tr>
<th>Column 1</th>
<th>Column 2</th>
...
</tr>
</thead>
<colgroup>
<col class="hide">
<col>
...
</colgroup>
<tbody>
<tr>
<td>Row 1 Column 1</td>
<td>Row 1 Column 2</td>
</tr>
...
</tbody>
</table>
Allerdings scheint es nur in Firefox zu arbeiten aber nicht in Safari oder Chrome. Erfordern Safari und Chrome eine spezielle Handhabung? Ich versuche zu vermeiden, alle Zeilen durchzulaufen und die CSS-Klasse/Stil auf jedem entsprechenden <td>
zu ändern, und die Anzahl der Spalten in der Tabelle ist groß, also möchte ich auch vermeiden, eine CSS-Klasse pro Spalte zu erstellen. Gibt es eine zuverlässige Möglichkeit, Spalten zwischen Browsern zu verstecken/anzuzeigen, indem einfach die CSS-Klasse unter <col>
geändert wird?
Verwandte: http://stackoverflow.com/questions/3077250/ie7-table-cells-made-invisible-by-css-kann nicht gemacht-sichtbar-by-later-class-chang – BalusC