У меня есть таблица HTML, упрощенная как:
<table border=1>
<tr>
<td style='white-space: nowrap;' >alpha alpha alpha </td>
<td rowspan=3>Lorem ipsum dolor sit amet, consectetur adipiscing elit</td>
<td>alpha</td>
</tr>
<tr>
<td style='white-space: nowrap;' >beta beta beta </td>
<td>beta</td>
</tr>
<tr>
<td style='white-space: nowrap;' >gamma gamma gamma </td>
<td>gamma</td>
</tr>
</table>
https://jsfiddle.net/1v2h4x9a/
Обычно отображается как:

Я бы предпочел использовать перенос слов, чтобы занять доступное вертикальное пространство. Таким образом, он должен отображаться как:

Целью здесь является эффективное использование экранной недвижимости. Т.е. почему столбец должен становиться шире, когда есть дополнительные строки для переноса текста.
Далее, я хочу сделать это только с HTML и CSS. Нет javascript. Я готов увидеть ответ на основе javascript (но вряд ли он этого захочет).
Обратите внимание, что в реальной таблице есть несколько столбцов с разной высотой, а самый левый столбец смещен от остальных, но это не так. Не стоит показывать это в образце. Кроме того, я бы предпочел, чтобы ячейка росла горизонтально, если что-то еще не занимало вертикальное пространство.
Я попытался установить небольшую ширину таблицы: это приводит к тому, что второй столбец становится очень узким и увеличивает высоту больше.