Ваш синтаксис неправильный:
Плохо
echo "<td style='height=10px; width=10px;'>";
Хорошо
echo "<td style='height:10px; width:10px;'>";
Однако это не решает проблему. При чтении spec только фиксированные таблицы макетов могут обрезать свое содержимое при переполнении (в отличие от изменения размера, чтобы приспособиться к нему).
Лучше / проще было бы использовать DIV
.
См. Этот пример: http://jsfiddle.net/Aa4JL/
Однако, если ваши данные являются табличными и вам нужно использовать таблицу, вы можете добиться того же эффекта, заключив содержимое ячейки в DIV
.
<table>
<tr>
<td><div style='height:10px; width:10px; overflow: hidden;'>This text is clipped.</div></td>
</tr>
</table>
Обратите внимание: если вы не заботитесь об отсечении по высоте, вы можете добиться хорошего эффекта эллипсов, используя таблицы с фиксированной компоновкой в сочетании с white-space: nowrap
в сочетании с text-overflow: ellipsis
. Это не требует упаковки содержимого с DIV. Обратите внимание, что эффект многоточия будет работать только в новых браузерах (в старых браузерах контент все равно должен быть обрезан).
<table style="table-layout:fixed;width:50px;">
<tr>
<td style='width:50px; overflow: hidden; white-space:nowrap; text-overflow: ellipsis;'>Long string of text with nice ellipses effect.</td>
</tr>
</table>
В этой скрипке есть все техники, которые я только что описал: http://jsfiddle.net/Aa4JL/4/