Скажімо, у мене є цей текст, який я хочу відобразити у комірці таблиці HTML:
Honey Nut Cheerios, Wheat Chex, Grape-Nuts, Rice Krispies, Some random cereal with a very long name, Honey Bunches of Oats, Wheaties, Special K, Froot Loops, Apple Jacks
і я хочу, щоб рядок перервався переважно після однієї коми.
Чи є спосіб сказати HTML-рендеріру спробувати зламати якесь визначене місце, і зробити це спочатку, перш ніж спробувати пробитися після одного з пробілів, не використовуючи пробіли, що не порушуються? Якщо я використовую пробіли без розриву, то це робить ширину беззастережно більшою. Я хочу, щоб розрив рядка відбувся після одного з пробілів, якщо алгоритм обертання рядків спробував це спочатку з комами і не може привести його до відповідного рядка.
Я спробував обернути фрагменти тексту в <span>
елементи, але це, здається, не допомагає.
<html>
<head>
<style type="text/css">
div.box { width: 180px; }
table, table td {
border: 1px solid;
border-collapse: collapse;
}
</style>
</head>
<body>
<div class="box">
<table>
<tr>
<td>lorem ipsum</td>
<td>lorem ipsum</td>
<td>lorem ipsum</td>
</tr>
<tr>
<td>lorem ipsum</td>
<td>
<span>Honey Nut Cheerios,</span>
<span>Wheat Chex,</span>
<span>Grape-Nuts,</span>
<span>Rice Krispies,</span>
<span>Some random cereal with a very long name,</span>
<span>Honey Bunches of Oats,</span>
<span>Wheaties,</span>
<span>Special K,</span>
<span>Froot Loops,</span>
<span>Apple Jacks</span>
</td>
<td>lorem ipsum</td>
</tr>
</table>
</div>
</body>
</html>
Примітка. Схоже, поведінка CSS3text-wrap: avoid
- це те, що я хочу, але, здається, я не можу змусити його працювати.