<col>: Das Tabellenspalten-Element
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
Das <col>
HTML-Element definiert eine oder mehrere Spalten in einer Spaltengruppe, die durch ihr übergeordnetes <colgroup>
-Element dargestellt wird. Das <col>
-Element ist nur als Kind eines <colgroup>
-Elements zulässig, das kein span
-Attribut definiert hat.
Probieren Sie es aus
<table>
<caption>
Superheros and sidekicks
</caption>
<colgroup>
<col />
<col span="2" class="batman" />
<col span="2" class="flash" />
</colgroup>
<tr>
<td></td>
<th scope="col">Batman</th>
<th scope="col">Robin</th>
<th scope="col">The Flash</th>
<th scope="col">Kid Flash</th>
</tr>
<tr>
<th scope="row">Skill</th>
<td>Smarts, strong</td>
<td>Dex, acrobat</td>
<td>Super speed</td>
<td>Super speed</td>
</tr>
</table>
.batman {
background-color: #d7d9f2;
}
.flash {
background-color: #ffe8d4;
}
table {
border-collapse: collapse;
border: 2px solid rgb(140 140 140);
font-family: sans-serif;
font-size: 0.8rem;
letter-spacing: 1px;
}
caption {
caption-side: bottom;
padding: 10px;
}
th,
td {
border: 1px solid rgb(160 160 160);
padding: 8px 6px;
}
td {
text-align: center;
}
Attribute
Dieses Element umfasst die globalen Attribute.
span
-
Gibt die Anzahl aufeinanderfolgender Spalten an, die das
<col>
-Element überspannt. Der Wert muss eine positive ganze Zahl größer als null sein. Sollte es nicht vorhanden sein, beträgt der Standardwert1
.
Veraltete Attribute
Die folgenden Attribute sind veraltet und sollten nicht verwendet werden. Sie sind hier dokumentiert, um bestehende Codes zu aktualisieren und aus historischen Gründen.
align
Veraltet-
Gibt die horizontale Ausrichtung jeder Spaltenzelle an. Die möglichen aufzählbaren Werte sind
left
,center
,right
,justify
undchar
. Wenn unterstützt, richtet derchar
-Wert den Textinhalt am imchar
-Attribut definierten Zeichen und am imcharoff
-Attribut definierten Offset aus. Beachten Sie, dass dieses Attribut die im übergeordneten<colgroup>
-Element angegebenealign
-Zuordnung überschreibt. Verwenden Sie stattdessen dietext-align
-CSS-Eigenschaft auf den<td>
- und<th>
-Elementen, da dieses Attribut veraltet ist.Hinweis: Das Setzen von
text-align
auf das<col>
-Element hat keine Wirkung, da<col>
keine Nachfolger hat und daher keine Elemente von ihm erben.Wenn die Tabelle kein
colspan
-Attribut verwendet, verwenden Sie dentd:nth-of-type(an+b)
-CSS-Selektor. Setzen Siea
auf null undb
auf die Position der Spalte in der Tabelle, z.B.td:nth-of-type(2) { text-align: right; }
, um die Zellen der zweiten Spalte rechts auszurichten.Wenn die Tabelle ein
colspan
-Attribut verwendet, kann der Effekt durch die Kombination geeigneter CSS-Attributselektoren wie[colspan=n]
erreicht werden, obwohl dies nicht einfach ist. bgcolor
Veraltet-
Definiert die Hintergrundfarbe jeder Spaltenzelle. Der Wert ist eine HTML-Farbe; entweder ein 6-stelliger hexadezimaler RGB-Code, der mit einem
#
beginnt, oder ein Farbkeyword. Andere CSS<color>
-Werte werden nicht unterstützt. Verwenden Sie stattdessen diebackground-color
-CSS-Eigenschaft, da dieses Attribut veraltet ist. char
Veraltet-
Macht nichts. Es war ursprünglich dazu gedacht, die Ausrichtung des Inhalts auf ein Zeichen jeder Spaltenzelle zu spezifizieren. Typische Werte hierfür umfassen einen Punkt (
.
), wenn versucht wird, Zahlen oder Geldbeträge auszurichten. Wennalign
nicht aufchar
gesetzt ist, wird dieses Attribut ignoriert, obwohl es dennoch das im übergeordneten<colgroup>
-Element angegebenechar
überschreibt. charoff
Veraltet-
Macht nichts. Es war ursprünglich dazu gedacht, die Anzahl der Zeichen anzugeben, um die der Inhalt der Spaltenzelle vom im
char
-Attribut angegebenen Ausrichtungszeichen versetzt werden soll. valign
Veraltet-
Gibt die vertikale Ausrichtung jeder Spaltenzelle an. Die mög<裔®›傳roty】lićtle
bottom都
middle, und
top. Beachten Sie, dass dieses Attribut die im übergeordneten
valign`](https://developer.mozilla.org/de/docs/Web/HTML/Reference/Elements/colgroup#valign)-Zuordnung überschreibt. Verwenden Sie stattdessen die<colgroup>
-Element angegebene [vertical-align
-CSS-Eigenschaft auf den<td>
- und<th>
-Elementen, da dieses Attribut veraltet ist.Hinweis: Das Setzen von
vertical-align
auf das<col>
-Element hat keine Wirkung, da<col>
keine Nachfolger hat und daher keine Elemente von ihm erben.Wenn die Tabelle kein
colspan
-Attribut verwendet, verwenden Sie dentd:nth-of-type(an+b)
-CSS-Selektor. Setzen Siea
auf null undb
auf die Position der Spalte in der Tabelle, z.B.td:nth-of-type(2) { vertical-align: middle; }
, um die Zellen der zweiten Spalte vertikal zu zentrieren.Wenn die Tabelle ein
colspan
-Attribut verwendet, kann der Effekt durch die Kombination geeigneter CSS-Attributselektoren wie[colspan=n]
erreicht werden, obwohl dies nicht einfach ist. width
Veraltet-
Gibt eine Standardbreite für jede Spalte an. Zusätzlich zu den Standardpixel- und Prozentwerten kann dieses Attribut die spezielle Form
0*
annehmen, was bedeutet, dass die Breite jeder überspannten Spalte die minimale Breite sein sollte, die erforderlich ist, um den Inhalt der Spalte aufzunehmen. Relative Breiten wie5*
können ebenfalls verwendet werden. Beachten Sie, dass dieses Attribut die im übergeordneten<colgroup>
-Element angegebenewidth
überschreibt. Verwenden Sie stattdessen diewidth
-CSS-Eigenschaft, da dieses Attribut veraltet ist.
Anwendungsnotizen
- Das
<col>
-Element wird innerhalb eines<colgroup>
-Elements verwendet, das keinspan
-Attribut hat. - Die
<col>
-Elemente gruppieren Spalten nicht strukturell zusammen. Dies ist die Rolle des<colgroup>
-Elements. - Nur eine begrenzte Anzahl von CSS-Eigenschaften beeinflusst
<col>
:background
: Die verschiedenenbackground
-Eigenschaften setzen den Hintergrund für Zellen innerhalb der Spalte. Da die Hintergrundfarbe der Spalte über der Tabelle und den Spaltengruppen (<colgroup>
), aber hinter den Hintergrundfarben, die auf die Zeilengruppen (<thead>
,<tbody>
, und<tfoot>
), die Zeilen (<tr>
) und die einzelnen Zellen (<th>
und<td>
) angewandt werden, bemalt wird, sind auf Tabellenspalten angewandte Hintergründe nur dann sichtbar, wenn jede über ihnen bemalte Schicht einen transparenten Hintergrund hat.border
: Die verschiedenenborder
-Eigenschaften gelten, jedoch nur, wenn die<table>
dasborder-collapse: collapse
gesetzt hat.visibility
: Der Wertcollapse
für eine Spalte führt dazu, dass alle Zellen dieser Spalte nicht gerendert werden und Zellen, die in andere Spalten hineinreichen, abgeschnitten werden. Der Platz, den diese Spalten eingenommen hätten, wird entfernt. Die Größe anderer Spalten wird jedoch immer noch so berechnet, als ob die Zellen in den zusammengebrochenen Spalten präsent wären. Andere Werte fürvisibility
haben keine Wirkung.width
: Diewidth
-Eigenschaft definiert eine Mindestbreite für die Spalte, als obmin-width
gesetzt wäre.
Beispiel
Siehe <table>
für ein vollständiges Tabellenbeispiel mit gängigen Standards und Best Practices.
Dieses Beispiel zeigt eine Tabelle mit acht Spalten, die in drei <col>
-Elemente unterteilt ist.
HTML
Ein <colgroup>
-Element bietet Strukturen zu einer Basistabelle und erstellt eine einzelne implizite Spaltengruppe. Drei <col>
-Elemente sind innerhalb des <colgroup>
enthalten, wodurch drei stilisierbare Spalten erstellt werden. Das span
-Attribut gibt die Anzahl der Tabellenspalten an, die jedes <col>
umfassen sollte (standardmäßig 1
, wenn es weggelassen wird), sodass Attribute über die Spalten in jedem <col>
hinweg geteilt werden können.
<table>
<caption>
Personal weekly activities
</caption>
<colgroup>
<col />
<col span="5" class="weekdays" />
<col span="2" class="weekend" />
</colgroup>
<tr>
<th>Period</th>
<th>Mon</th>
<th>Tue</th>
<th>Wed</th>
<th>Thu</th>
<th>Fri</th>
<th>Sat</th>
<th>Sun</th>
</tr>
<tr>
<th>a.m.</th>
<td>Clean room</td>
<td>Football training</td>
<td>Dance Course</td>
<td>History Class</td>
<td>Buy drinks</td>
<td>Study hour</td>
<td>Free time</td>
</tr>
<tr>
<th>p.m.</th>
<td>Yoga</td>
<td>Chess Club</td>
<td>Meet friends</td>
<td>Gymnastics</td>
<td>Birthday party</td>
<td>Fishing trip</td>
<td>Free time</td>
</tr>
</table>
CSS
Wir verwenden CSS anstelle veralteter HTML-Attribute, um den Spalten eine Hintergrundfarbe zu geben und den Zellinhalt auszurichten:
table {
border-collapse: collapse;
border: 2px solid rgb(140 140 140);
}
caption {
caption-side: bottom;
padding: 10px;
}
th,
td {
border: 1px solid rgb(160 160 160);
padding: 8px 6px;
text-align: center;
}
.weekdays {
background-color: #d7d9f2;
}
.weekend {
background-color: #ffe8d4;
}
Ergebnis
Technische Zusammenfassung
Inhaltskategorien | Keine. |
---|---|
Erlaubter Inhalt | Keiner; es ist ein leeres Element. |
Tag-Auslassung | Muss ein öffnendes Tag haben und darf kein schließendes Tag haben. |
Erlaubte Eltern |
Nur <colgroup> , obwohl es implizit definiert werden kann, da sein öffnendes Tag nicht obligatorisch ist. Das
<colgroup> darf kein
span -Attribut haben.
|
Implizite ARIA-Rolle | Keine entsprechende Rolle |
Erlaubte ARIA-Rollen | Keine role erlaubt |
DOM-Schnittstelle | [`HTMLTableColElement`](/de/docs/Web/API/HTMLTableColElement) |
Spezifikationen
Specification |
---|
HTML # the-col-element |
Browser-Kompatibilität
Siehe auch
<caption>
,<colgroup>
,<table>
,<tbody>
,<td>
,<tfoot>
,<th>
,<thead>
,<tr>
: Andere tabellenbezogene Elementebackground-color
: CSS-Eigenschaft, um die Hintergrundfarbe jeder Spaltenzelle festzulegenborder
: CSS-Eigenschaft, um die Ränder von Spaltenzellen zu steuerntext-align
: CSS-Eigenschaft, um den Inhalt jeder Spaltenzelle horizontal auszurichtenvertical-align
: CSS-Eigenschaft, um den Inhalt jeder Spaltenzelle vertikal auszurichtenvisibility
: CSS-Eigenschaft, um Zellen einer Spalte auszublendenwidth
: CSS-Eigenschaft, um die Standardbreite für jede Spalte zu steuern:nth-of-type
,:first-of-type
,:last-of-type
: CSS-Pseudoklassen, um die gewünschten Spaltenzellen auszuwählen