Атрибут charoff тега <tr>


Описание

Атрибут charoff для тега <tr> определяет смещение выравнивания относительно указанного символа (задаётся атрибутом char). Этот атрибут работает в связке с align="char" и является устаревшим в HTML5.

Пример использования:
<table> <tr align="char" char="." charoff="50%"> <td>100.50</td> <td>250.00</td> </tr> </table>

Форматы значений:

Тип значения Пример Описание
Проценты 50% Смещение относительно ширины ячейки
Пиксели 10px Абсолютное смещение (редко поддерживается)

Современная CSS-альтернатива:

<style> .decimal-align td { text-align: "." left; padding-left: 20px; /* Аналог charoff */ } </style> <table> <tr class="decimal-align"> <td>100.50</td> <td>250.00</td> </tr> </table>

Особенности работы:

  • Требует одновременного использования align="char" и char
  • Поддержка в браузерах крайне ограничена
  • Влияет на все ячейки строки
  • Не работает с вертикальным выравниванием

Рекомендации:

  • Полностью избегайте использования этого атрибута
  • Для денежных значений используйте CSS text-align с padding
  • Рассмотрите разделение целой и дробной частей в разных ячейках
  • Используйте моноширинные шрифты для точного позиционирования

Проблемы и ограничения:

  • Практически не поддерживается современными браузерами
  • Невалиден в HTML5
  • Непредсказуемое поведение при разных размерах шрифта
  • Сложность в поддержке адаптивного дизайна

Пример правильного CSS-решения:

<style> .money-cell { text-align: right; padding-right: 1em; position: relative; } .money-cell::after { content: attr(data-currency); position: absolute; right: 0; } </style> <table> <tr> <td class="money-cell" data-currency="USD">100.50</td> <td class="money-cell" data-currency="EUR">250.00</td> </tr> </table>

Примечание: Для сложных финансовых таблиц рекомендуется использовать специализированные JavaScript-библиотеки или компоненты фреймворков.