Ich versuche, Spalten in einer Tabelle basierend auf den Benutzeroptionen während der Laufzeit zu verbergen / anzuzeigen. Ich habe zwei CSS-Klassen definiert:
%Vor% Ich habe versucht, diese Stile für das <col>
-Element festzulegen, das der Spalte entspricht, die ich ausblenden / anzeigen möchte:
Es scheint jedoch nur in Firefox zu funktionieren, aber nicht in Safari oder Chrome. Erfordern Safari und Chrome eine spezielle Handhabung? Ich versuche, das Durchlaufen aller Zeilen zu vermeiden und die CSS-Klasse / -Stil für jede entsprechende <td>
zu ändern, und die Anzahl der Spalten in der Tabelle ist groß. Daher 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 Sie einfach die CSS-Klasse in <col>
?
Webkit-basierte Browser scheinen Col {Sichtbarkeit: Kollaps} noch nicht zu unterstützen. Ссылка ist sehr nützlich für die Überprüfung der Tabellenspaltenunterstützung.
Ich spiele gerade mit:
%Vor%Aber dann kann ich es mir leisten, mich nicht um IE zu kümmern. Passen Sie nur auf, dass Sie für irgendwelche colspans und rowspans zwicken müssen. Verwenden Sie tr: first-child, tr: nicht (: first-child) usw. usw., um nach Bedarf auszuwählen / zu vermeiden.
Ich denke, die bessere Wahl besteht darin, colgroup in Ihrer Tabelle zu verwenden und die CSS-Attribute so zu ändern, dass eine Spalte oder eine Gruppe von Spalten ein- oder ausgeblendet wird. Zum Beispiel würden Sie die ersten fünf Spalten wie folgt ausblenden:
%Vor%Und Sie würden das Attribut wie folgt durch JQuery ändern:
%Vor%Tags und Links css