<td>: Das Tabellen-Data-Cellelement
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 <td>
HTML-Element definiert eine Tabellenzelle, die Daten enthält und kann als Kind des <tr>
-Elements verwendet werden.
Probieren Sie es aus
<table> <caption> Alien football stars </caption> <tr> <th scope="col">Player</th> <th scope="col">Gloobles</th> <th scope="col">Za'taak</th> </tr> <tr> <th scope="row">TR-7</th> <td>7</td> <td>4,569</td> </tr> <tr> <th scope="row">Khiresh Odo</th> <td>7</td> <td>7,223</td> </tr> <tr> <th scope="row">Mia Oolong</th> <td>9</td> <td>6,219</td> </tr> </table>
th, td { border: 1px solid rgb(160 160 160); padding: 8px 10px; } th[scope="col"] { background-color: #505050; color: #fff; } th[scope="row"] { background-color: #d6ecd4; } td { text-align: center; } tr:nth-of-type(even) { background-color: #eee; } 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; }
Attribute
Dieses Element enthält die globalen Attribute.
colspan
-
Enthält einen nicht-negativen Ganzzahlwert, der angibt, über wie viele Spalten die Datenzelle sich erstreckt. Der Standardwert ist
1
. Benutzeragenten ignorieren Werte über 1000 als falsch und setzen sie auf den Standardwert (1
). headers
-
Enthält eine durch Leerzeichen getrennte Liste von Zeichenfolgen, von denen jede der
id
-Attribut von<th>
-Elementen entspricht, die Überschriften für diese Tabellenzelle bereitstellen. rowspan
-
Enthält einen nicht-negativen Ganzzahlwert, der angibt, über wie viele Zeilen die Datenzelle sich erstreckt. Der Standardwert ist
1
; wenn der Wert auf0
gesetzt ist, erstreckt sie sich bis zum Ende des Tabellengruppierungsabschnitts (<thead>
,<tbody>
,<tfoot>
, auch wenn er implizit definiert ist), zu dem die Zelle gehört. Werte über65534
werden auf65534
gekürzt.
Veraltete Attribute
Die folgenden Attribute sind veraltet und sollten nicht verwendet werden. Sie sind unten zur Referenz dokumentiert, um vorhandenen Code zu aktualisieren und aus historischem Interesse.
abbr
Veraltet-
Enthält eine kurze Abkürzungsbeschreibung des Inhalts der Datenzelle. Einige Benutzeragenten, wie z. B. Sprachleser, können diese Beschreibung vor dem Inhalt selbst präsentieren. Setzen Sie den abgekürzten Inhalt innerhalb der Zelle und platzieren Sie die (längere) Beschreibung im
title
-Attribut, da dieses Attribut veraltet ist. Oder, vorzugsweise, den Inhalt innerhalb der Datenzelle einfügen und CSS verwenden, um überlaufenden Text visuell abzuschneiden. align
Veraltet-
Gibt die horizontale Ausrichtung der Datenzelle an. Die möglichen enumerierten Werte sind
left
,center
,right
,justify
undchar
. Wenn unterstützt, richtet derchar
-Wert den Textinhalt am durch daschar
-Attribut definierten Zeichen und dem durch dascharoff
-Attribut definierten Versatz aus. Verwenden Sie stattdessen dietext-align
-CSS-Eigenschaft, da dieses Attribut veraltet ist. axis
Veraltet-
Enthält eine durch Leerzeichen getrennte Liste von Zeichenfolgen, von denen jede der
id
-Attribut einer Gruppe von Zellen entspricht, für die die Datenzelle gilt. bgcolor
Veraltet-
Definiert die Hintergrundfarbe der Datenzelle. Der Wert ist eine HTML-Farbe, entweder ein 6-stelliger hexadezimaler RGB-Code, mit einem
#
-Präfix, oder ein Farbname. Andere CSS<color>
-Werte werden nicht unterstützt. Verwenden Sie stattdessen diebackground-color
-CSS-Eigenschaft, da dieses Attribut veraltet ist. char
Veraltet-
Tut nichts. Es war ursprünglich vorgesehen, die Ausrichtung des Inhalts an einem Zeichen der Datenzelle zu spezifizieren. Typische Werte dafür sind ein Punkt (
.
), wenn versucht wird, Zahlen oder Geldbeträge auszurichten. Wennalign
nicht aufchar
gesetzt ist, wird dieses Attribut ignoriert. charoff
Veraltet-
Tut nichts. Es war ursprünglich dafür gedacht, die Anzahl der Zeichen zu spezifizieren, um die Datenzellinhalte vom Ausrichtungszeichen, das durch das
char
-Attribut angegeben wurde, zu versetzen. height
Veraltet-
Definiert eine empfohlene Höhe für die Datenzelle. Verwenden Sie stattdessen die
height
-CSS-Eigenschaft, da dieses Attribut veraltet ist. scope
Veraltet-
Definiert die Zellen, zu denen die Überschrift (definiert im
<th>
)-Element gehört. Die möglichen enumerierten Werte sindrow
,col
,rowgroup
undcolgroup
. Verwenden Sie dieses Attribut nur mit dem<th>
-Element, um die Zeile oder Spalte zu definieren, für die es als Header fungiert, da dieses Attribut für das<td>
-Element veraltet ist. valign
Veraltet-
Gibt die vertikale Ausrichtung der Datenzelle an. Die möglichen enumerierten Werte sind
baseline
,bottom
,middle
, undtop
. Verwenden Sie stattdessen dievertical-align
-CSS-Eigenschaft, da dieses Attribut veraltet ist. width
Veraltet-
Definiert eine empfohlene Breite für die Datenzelle. Verwenden Sie stattdessen die
width
-CSS-Eigenschaft, da dieses Attribut veraltet ist.
Nutzungshinweise
-
Das
<td>
darf nur innerhalb eines<tr>
-Elements verwendet werden. -
Wenn Sie die Attribute
colspan
undrowspan
verwenden, um Datenzellen über mehrere Spalten und Zeilen zu erstrecken, werden Zellen ohne definierte Attribute (mit einem Standardwert von1
) automatisch in freie verfügbare Plätze in der Tabellenstruktur eingefügt, die 1x1-Zellen umfassen, wie in der folgenden Abbildung dargestellt:Hinweis: Diese Attribute dürfen nicht verwendet werden, um Zellen zu überlappen.
Beispiele
Siehe <table>
für ein vollständiges Tabellenbeispiel, das gängige Standards und bewährte Praktiken vorstellt.
Grundlegende Datenzellen
Dieses Beispiel verwendet <td>
-Elemente zusammen mit anderen tabellenbezogenen Elementen, um eine grundlegende Tabelle mit Daten über das phonetische Alphabet vorzustellen.
HTML
Einige Tabellenzeilen (<tr>
-Elemente) enthalten sowohl Header-Zellen (<th>
-Elemente) als auch Datenzellen-<td>
-Elemente. Das <th>
-Element, das das erste Kind jeder Zeile ist, bildet die erste Spalte der Tabelle, wobei jedes <th>
den Zeilenüberschrift für die Datenzellen in dieser Zeile bereitstellt. Jedes entsprechende <td>
-Element enthält Daten, die mit ihrer jeweiligen Spaltenüberschrift und Zeilenüberschrift-Zelle übereinstimmen.
Hinweis: Normalerweise würde eine Tabellenkopfgruppe mit Spaltenüberschriften implementiert werden, um das Verständnis der Informationen in den Spalten zu erleichtern. Die <thead>
- und <tbody>
-Elemente würden verwendet werden, um solche Reihen von Kopf- und Datenzellen in die jeweiligen Kopf- und Körperabschnitte der Tabelle zu gruppieren. Dies ist in diesem Beispiel nicht implementiert, um den Fokus auf die Datenzellen zu legen und die Komplexität dieses Beispiels zu reduzieren.
<table> <tr> <th scope="row">A</th> <td>Alfa</td> <td>AL fah</td> </tr> <tr> <th scope="row">B</th> <td>Bravo</td> <td>BRAH voh</td> </tr> <tr> <th scope="row">C</th> <td>Charlie</td> <td>CHAR lee</td> </tr> <tr> <th scope="row">D</th> <td>Delta</td> <td>DELL tah</td> </tr> </table>
CSS
Ein wenig grundlegendes CSS wird verwendet, um die Tabelle und ihre Zellen zu gestalten. CSS-Attributselektoren und die :nth-of-type
Pseudo-Klasse werden verwendet, um das Erscheinungsbild der Zellen abzuwechseln und die Informationen in der Tabelle leichter verständlich und erkennbar zu machen.
td, th { border: 1px solid rgb(160 160 160); padding: 8px 10px; } tr:nth-of-type(odd) td { background-color: #eee; } tr th[scope="row"] { background-color: #d6ecd4; }
Ergebnis
Spannen von Spalten und Zeilen
Dieses Beispiel erweitert und verbessert die Grundtabelle aus dem vorherigen Beispiel durch Hinzufügen einer zusätzlichen "ABC"-Zelle.
HTML
Eine zusätzliche Datenzelle (<td>
-Element) wird in der ersten Zeile (<tr>
-Element) eingeführt. Dies erstellt eine vierte Spalte in der Tabelle.
Unter Verwendung des rowspan
-Attributs wird die "ABC"-Zelle über die ersten drei Zeilen der Tabelle gespannt. Die letzten Datenzellen der folgenden Zeilen umfassen jeweils zwei Spalten. Dies wird mithilfe des colspan
-Attributs erreicht, um sie korrekt innerhalb der Tabellenstruktur auszurichten. Beachten Sie, dass eine zusätzliche Zeile (<tr>
-Element) zur Tabelle hinzugefügt wird, um dies zu veranschaulichen.
<table> <tr> <th scope="row">A</th> <td>Alfa</td> <td>AL fah</td> <td rowspan="3">ABC</td> </tr> <tr> <th scope="row">B</th> <td>Bravo</td> <td>BRAH voh</td> </tr> <tr> <th scope="row">C</th> <td>Charlie</td> <td>CHAR lee</td> </tr> <tr> <th scope="row">D</th> <td>Delta</td> <td colspan="2">DELL tah</td> </tr> <tr> <th scope="row">E</th> <td>Echo</td> <td colspan="2">ECK oh</td> </tr> </table>
CSS
Die :first-of-type
- und :last-of-type
-Pseudo-Klassen werden im CSS verwendet, um die hinzugefügte "ABC"-Datenzelle auszuwählen und zu gestalten.
tr:first-of-type td:last-of-type { width: 60px; background-color: #505050; color: #fff; font-weight: bold; text-align: center; } td, th { border: 1px solid rgb(160 160 160); padding: 8px 10px; } tr:nth-of-type(odd) td { background-color: #eee; } tr th[scope="row"] { background-color: #d6ecd4; }
Ergebnis
Datenzellen mit Kopfzellen verknüpfen
Für komplexere Beziehungen zwischen Datenzellen (<td>
-Elementen) und Kopfzellen (<th>
-Elementen) kann die Verwendung von <th>
-Elementen mit dem scope
-Attribut allein für unterstützende Technologien, insbesondere Bildschirmleser, nicht ausreichend sein.
HTML
Um die Barrierefreiheit des vorherigen Beispiels zu verbessern und damit Bildschirmleser beispielsweise die Überschriften aussprechen können, die mit jeder Datenzelle verbunden sind, kann das headers
-Attribut zusammen mit den id
-Attributen eingeführt werden. Jede Zeilenüberschriftszelle (<th>
-Element), das mit der "ABC"-Datenzelle verbunden ist, d.h. die Buchstaben "A", "B" und "C", erhält eine eindeutige Kennung mit dem id
-Attribut. Die "ABC"-Datenzelle (<td>
-Element) verwendet dann diese id
-Werte in einer durch Leerzeichen getrennten Liste für das headers
-Attribut.
Hinweis: Es wird empfohlen, aussagekräftigere und nützlichere Werte für das id
-Attribut zu verwenden. Jede id
in einem Dokument muss für dieses Dokument eindeutig sein. In diesem Beispiel sind die id
-Werte Einzelzeichen, um den Fokus auf das Konzept des headers
-Attributs zu legen.
<table> <tr> <th id="a" scope="row">A</th> <td>Alfa</td> <td>AL fah</td> <td headers="a b c" rowspan="3">ABC</td> </tr> <tr> <th id="b" scope="row">B</th> <td>Bravo</td> <td>BRAH voh</td> </tr> <tr> <th id="c" scope="row">C</th> <td>Charlie</td> <td>CHAR lee</td> </tr> <tr> <th scope="row">D</th> <td>Delta</td> <td colspan="2">DELL tah</td> </tr> <tr> <th scope="row">E</th> <td>Echo</td> <td colspan="2">ECK oh</td> </tr> </table>
Ergebnis
Während das visuelle Ergebnis aus der vorherigen Beispielstabelle unverändert bleibt, wird jetzt jede Datenzelle (<td>
) explizit mit ihrer Zeilenüberschrift (<th>
) verknüpft.
Technische Zusammenfassung
Inhaltskategorien | Abschnittsverwurzelung. |
---|---|
Erlaubter Inhalt | Fließender Inhalt. |
Tag-Auslassung | Der Start-Tag ist obligatorisch. Der End-Tag kann weggelassen werden, wenn er unmittelbar von einem <th> oder einem <td> -Element gefolgt wird oder wenn keine weiteren Daten im Elternelement vorhanden sind. |
Erlaubte Eltern | Ein <tr> -Element. |
Implizite ARIA-Rolle | cell wenn ein Nachkomme eines <table> -Elements, oder gridcell wenn ein Nachkomme eines Elements mit grid -Rolle ist. |
Erlaubte ARIA-Rollen | Beliebig |
DOM-Schnittstelle | [`HTMLTableCellElement`](/de/docs/Web/API/HTMLTableCellElement) |
Spezifikationen
Specification |
---|
HTML # the-td-element |
Browser-Kompatibilität
Siehe auch
- Lernen: Grundlagen von HTML-Tabellen
<caption>
,<col>
,<colgroup>
,<table>
,<tbody>
,<tfoot>
,<th>
,<thead>
,<tr>
: Andere tabellenbezogene Elementebackground-color
: CSS-Eigenschaft zur Festlegung der Hintergrundfarbe jeder Datenzelleborder
: CSS-Eigenschaft zur Steuerung der Ränder von Datenzellenheight
: CSS-Eigenschaft zur Steuerung der empfohlenen Höhe der Datenzelletext-align
: CSS-Eigenschaft, um den Inhalt jeder Datenzelle horizontal auszurichtenvertical-align
: CSS-Eigenschaft, um den Inhalt jeder Datenzelle vertikal auszurichtenwidth
: CSS-Eigenschaft zur Steuerung der empfohlenen Breite der Datenzelle:nth-of-type
,:first-of-type
,:last-of-type
: CSS-Pseudoklassen, um die gewünschten Datenzellen auszuwählen