Skip to main content
HTML Validation

Table column N established by element “col” has no cells beginning in it.

About This HTML Issue

This table's <col> elements declare more columns than its rows fill, so column N has no <td> or <th> starting in it.

Each <col> inside a <colgroup> adds one column to the table, or as many columns as its span attribute says. The HTML table model then requires every column to have at least one cell that begins in it. A cell that only reaches the column through colspan doesn't count: with <col span="3"> and a row of <td>Alice</td><td colspan="2">2019</td>, column 3 is still reported.

The usual cause is column markup that no longer matches the content, such as a template that always writes the same <colgroup>, or a column removed from every row but left in the <colgroup>. Rows shorter than the column markup also trigger a companion error, "A table row was 2 columns wide, which is less than the column count established using column markup (3)".

To fix it, make the column markup match the rows. Remove the extra <col> elements or lower their span, or add the missing cells if that column should hold data.

Invalid example

Three <col> elements, but every row has only two cells:

<table>
<colgroup>
<col class="name">
<col class="role">
<col class="year">
</colgroup>
<tr>
<th>Name</th>
<th>Year</th>
</tr>
<tr>
<td>Alice Moreno</td>
<td>2019</td>
</tr>
</table>

Valid example

The <colgroup> declares the same two columns the rows use:

<table>
<colgroup>
<col class="name">
<col class="year">
</colgroup>
<tr>
<th>Name</th>
<th>Year</th>
</tr>
<tr>
<td>Alice Moreno</td>
<td>2019</td>
</tr>
</table>

Find issues like this automatically

Rocket Validator scans thousands of pages in seconds, detecting HTML issues across your entire site.

Help us improve our guides

Was this guide helpful?
🌍 Trusted by teams worldwide

Validate at scale.
Ship accessible websites, faster.

Automated HTML & accessibility validation for large sites. Check thousands of pages against WCAG guidelines and W3C standards in minutes, not days.

Scheduled Reports
API Access
Open Source Standards
€5 / week

1K Weekly

1,000 monthly checks. Cancel anytime.

Get 1K Weekly →

Join teams across 40+ countries