I am trying to use calc
to fix the width of my th:last-child
which differs from the others by 15px. What I've done is:
th:last-child {
width: calc( (100% - 30px)/12 + 30px );
}
table, tr {
width:100%;
border: 1px solid black;
height:10px;
}
th {
border-right: 1px solid black;
width: calc( (100% - 30px)/12 );
}
<table>
<thead>
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
<th>Column 4</th>
<th>Column 5</th>
<th>Column 6</th>
<th>Column 7</th>
<th>Column 8</th>
<th>Column 9</th>
<th>Column 10</th>
<th>Column 11</th>
<th>Column 12</th>
</tr>
</thead>
<tbody>
<tr>
<td>Row 1</td>
<td>Row 2</td>
<td>Row 3</td>
<td>Row 4</td>
<td>Row 5</td>
<td>Row 6</td>
<td>Row 7</td>
<td>Row 8</td>
<td>Row 9</td>
<td>Row 10</td>
<td>Row 11</td>
<td>Row 12</td>
</tr>
</tbody>
</table>
JS Fiddle reproduction.
I've divided by 12 because it is the number of columns in my table. As I understood 100% is treated as the width of the parent. The problem is that finally, I don't get what I would expect, any idea why?
You must set table-layout
property to 'fixed'.
See using calc() with tables
And working example: https://jsfiddle.net/rpyydd5n/3/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With