Центрирование чекбокса в ячейке таблицы: inline CSS
Быстрый ответ
Для центрирования чекбокса в ячейке таблицы используйте возможности Flexbox в CSS. Примените к ячейке свойства display: flex;, justify-content: center; и align-items: center;. Вот пример реализации:
.checkbox-cell {
  display: flex;
  justify-content: center;
  align-items: center;
}
<td class="checkbox-cell"><input type="checkbox" /></td>
Включите этот CSS-код в свои стилевые правила и добавьте класс class="checkbox-cell" к тегу <td>, внутри которого располагается чекбокс.

Подробный путь к центрированию чекбокса
Устаревшие методы: Text-Align и Vertical-Align
Раньше для центрирования элементов использовались свойства text-align и vertical-align.
.checkbox-cell {
  text-align: center;
  vertical-align: middle;
}
Такие свойства обеспечивают центрирование чекбокса как по горизонту, так и по вертикали.
Метод с использованием обёртки: Div-элемент
Чтобы получить больший контроль над элементом, можно поместить чекбокс внутрь div-элемента:
<td>
  <div style="text-align: center;">
    <input type="checkbox" />
  </div>
</td>
Такой подход может добавить немного отступа вокруг чекбокса.
Атрибут Align: вспоминая старые времена
Ещё один довольно простой, но устаревший способ – использование атрибута align. Однако, его применение не рекомендуется в строгих HTML5-документах:
<td align="center"><input type="checkbox" /></td>
В современной веб-разработке лучше отдавать предпочтение использованию CSS.
Заполнение пространства: динамические ячейки
В динамических таблицах можно добавлять чекбоксы с помощью JavaScript или серверных шаблонов:
function addCheckboxes() {
  let tableRow = "<tr><td style='display: flex; justify-content: center; align-items: center;'><input type='checkbox'></td></tr>";
  // Вставьте строку в таблицу, воспользовавшись, например, jQuery.
}
Добавьте этот JavaScript код, и чекбокс появится мгновенно.
Учитываем адаптивность: респонсив-дизайн
Не забывайте, что чекбоксы должны корректно отображаться на различных устройствах:
.table-responsive {
  width: 100%;
  overflow-x: auto;
}
Эти стили обеспечат правильное отображение чекбоксов на экранах малых размеров.
Совместимость с браузерами: задача не для слабонервных
Обеспечение совместимости с различными браузерами – важная миссия. Проверьте поддержку CSS-свойств, таких как display: flex;.
Визуализация
Вашему вниманию представлено визуальное руководство по центровке чекбокса:
| Ячейка таблицы (🔲)         | Центровка (🎯)        |
| -------------------------- | ---------------------- |
| Без центровки              | [ ]                    |
| С горизонтальной центровкой|     [ ]                |
| С вертикальной центровкой  |          [ ]           |
| Идеальная центровка        |          [✔️]          |
Целимся в идеальную центровку – заветное [✔️]!
Работа не только с чекбоксами
Есть много других задач, связанных с работой с таблицами, помимо центрирования чекбоксов. Среди них: объединение строк и добавление дополнительного контента:
Объединение строк
Если чекбокс идёт в ячейке, которая занимает несколько строк, то flexbox и тут придёт на помощь:
.spanning-checkbox-cell {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
Соблюдаем профессионализм: использование внешних стилей
При создании законченного продукта рекомендуется использовать внешние стилевые файлы, а не inline CSS:
/* В вашем CSS файле */
.checkbox-cell {
  /* ... стили flexbox ... */
}
Проблемы совместимости
Помните о необходимости проверки макета в различных браузерах и на устройствах разных размеров, так как отступы, границы и фиксированные высоты могут повлиять на выравнивание.
Изучаем, тестируем, сотрудничаем
Для тестирования и совместной работы используйте инструменты вроде jsFiddle.
Полезные материалы
- Центрирование в CSS: полное руководство | CSS-Tricks — Подробное руководство по центрированию элементов в CSS.
- Стилизация веб-форм – Учим веб-разработку | MDN — Обучающее руководство MDN по настройке стилей форм, включая центровку элементов формы.
- Как создать пользовательский чекбокс и радио кнопки — Пошаговое руководство от W3Schools по настройке и центрированию чекбоксов.
- html – Как выровнять элемент по горизонтали и по вертикали – Stack Overflow — Дополнительные советы и методы центрирования.
- Можно ли использовать... Таблицы поддержки для HTML5, CSS3 и т.д. — Первоклассный ресурс для проверки совместимости CSS-свойств и функционала.


