This might work:
HTML
<table>
<tr>
<th rowspan="0">pic</th>
<td>text</td>
<td>text</td>
</tr>
<tr>
<td>text</td>
<td>text</td>
</tr>
<tr>
<td>text</td>
<td>text</td>
</tr>
</table>
CSS
table {
table-layout: fixed;
border-collapse: collapse;
width: 100%;
}
td, th{
border: 1px solid #000;
width: auto;
}
td+th {
width: auto;
}
th {
height:300px;
}
Just change the height of a th
in the CSS or add different sized pictures to the cell. You may also add a variable number of rows to the HTML.
Note! rowspan=0
might only work with Firefox and Opera. At least it doesn't work with Safari. You might want to add a picture to the left and two columned table to its right if you do not know the row count beforehand or are not able to use php
or JavaScript
to determine it dynamically.
See also this answer: Table with table-layout: fixed; and how to make one column wider