Атрибут char тега <colgroup>
Описание
Атрибут char для тега <colgroup> позволяет задать символ, относительно которого будет выравниваться содержимое ячеек в группе столбцов. Этот атрибут работает только в сочетании с align="char" и предназначен в основном для выравнивания числовых данных по десятичной точке или другому символу.
<table border="1" width="300px">
<colgroup align="char" char="." span="2"></colgroup>
<tr>
<th>Финансовые показатели</th>
<th>Проценты</th>
</tr>
<tr>
<td>1,245.50</td>
<td>15.75%</td>
</tr>
</table>
Особенности работы:
| Аспект | Описание | Примечание |
|---|---|---|
| Обязательное сочетание | Требуется align="char" |
Без этого атрибута char не работает |
| Типовые символы | Точка (.), запятая (,) или другие | Зависит от локали и типа данных |
| Поддержка браузерами | Очень ограниченная | Большинство браузеров игнорируют |
Современная CSS-альтернатива:
<style>
.decimal-align {
text-align: right;
font-variant-numeric: tabular-nums;
}
</style>
<table>
<colgroup class="decimal-align"></colgroup>
<tr>
<td>1,234.56</td>
</tr>
</table>
Рекомендации:
- Избегайте использования в новых проектах
- Для числовых данных используйте CSS
text-align: right - Применяйте моноширинные шрифты для чисел
- Для сложных случаев используйте JavaScript-библиотеки
- Тестируйте в целевых браузерах
Пример с JavaScript-решением:
<script>
function alignDecimal() {
document.querySelectorAll('td.numeric').forEach(cell => {
const parts = cell.textContent.split('.');
if (parts.length > 1) {
cell.innerHTML = `<span class="int">${parts[0]}.</span><span class="frac">${parts[1]}</span>`;
}
});
}
</script>
<table>
<tr>
<td class="numeric">1234.56</td>
</tr>
</table>
Важные замечания:
- Атрибут устарел в HTML5
- Практически не поддерживается современными браузерами
- Не работает с центрированным или выровненным по ширине текстом
- Для финансовых данных лучше использовать специализированные библиотеки
- Рассмотрите возможность разделения целой и дробной частей в разных ячейках
Примечание: Хотя атрибут char формально существует в спецификации, его практическая полезность крайне ограничена из-за отсутствия поддержки в браузерах. Для профессиональной вёрстки таблиц с числовыми данными рекомендуется использовать CSS или JavaScript-решения.