Красивые таблицы CSS в HTML
.simple-little-table {
font-family:Arial, Helvetica, sans-serif;
color:#666;
font-size:12px;
text-shadow: 1px 1px 0px #fff;
background:#eaebec;
margin:20px;
border:#ccc 1px solid;
border-collapse:separate;
-moz-border-radius:3px;
-webkit-border-radius:3px;
border-radius:3px;
-moz-box-shadow: 0 1px 2px #d1d1d1;
-webkit-box-shadow: 0 1px 2px #d1d1d1;
box-shadow: 0 1px 2px #d1d1d1;
}
.simple-little-table th {
font-weight:bold;
padding:21px 25px 22px 25px;
border-top:1px solid #fafafa;
border-bottom:1px solid #e0e0e0;
background: #ededed;
background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#ebebeb));
background: -moz-linear-gradient(top, #ededed, #ebebeb);
}
.simple-little-table th:first-child{
text-align: left;
padding-left:20px;
}
.simple-little-table tr:first-child th:first-child{
-moz-border-radius-topleft:3px;
-webkit-border-top-left-radius:3px;
border-top-left-radius:3px;
}
.simple-little-table tr:first-child th:last-child{
-moz-border-radius-topright:3px;
-webkit-border-top-right-radius:3px;
border-top-right-radius:3px;
}
.simple-little-table tr{
text-align: center;
padding-left:20px;
}
.simple-little-table tr td:first-child{
text-align: left;
padding-left:20px;
border-left: 0;
}
.simple-little-table tr td {
padding:18px;
border-top: 1px solid #ffffff;
border-bottom:1px solid #e0e0e0;
border-left: 1px solid #e0e0e0;
background: #fafafa;
background: -webkit-gradient(linear, left top, left bottom, from(#fbfbfb), to(#fafafa));
background: -moz-linear-gradient(top, #fbfbfb, #fafafa);
}
.simple-little-table tr:nth-child(even) td{
background: #f6f6f6;
background: -webkit-gradient(linear, left top, left bottom, from(#f8f8f8), to(#f6f6f6));
background: -moz-linear-gradient(top, #f8f8f8, #f6f6f6);
}
.simple-little-table tr:last-child td{
border-bottom:0;
}
.simple-little-table tr:last-child td:first-child{
-moz-border-radius-bottomleft:3px;
-webkit-border-bottom-left-radius:3px;
border-bottom-left-radius:3px;
}
.simple-little-table tr:last-child td:last-child{
-moz-border-radius-bottomright:3px;
-webkit-border-bottom-right-radius:3px;
border-bottom-right-radius:3px;
}
.simple-little-table tr:hover td{
background: #f2f2f2;
background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#f0f0f0));
background: -moz-linear-gradient(top, #f2f2f2, #f0f0f0);
}
.simple-little-table a:link {
color: #666;
font-weight: bold;
text-decoration:none;
}
.simple-little-table a:visited {
color: #999999;
font-weight:bold;
text-decoration:none;
}
.simple-little-table a:active,
.simple-little-table a:hover {
color: #bd5a35;
text-decoration:underline;
}
Красивые таблицы на CSS +Видео
Время чтения: 3 мин.Таблицы — это удобный способ представить большое количество информации наиболее компактно. Например всевозможные рейтинги, прайс-листы, цены и так далее. Но важно то, что таблицы должны привлекать пользователя и быть удобными и приятными к просмотру. Поэтому мы сегодня рассмотрим создадим две симпатичные таблицы, а также я сделал видео об одном интересном сервисе.
Красивые таблицы на CSS
Простая таблица на CSS3
Первая таблица, которую мы создадим.
Пример меню можно увидеть здесь:
Посмотреть примерСкачать
HTML часть
HTML каркас не содержит в себе ничего нового. Он выглядит следующим образом:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | <table cellspacing="0"> <tr> <th>Lorem ipsum</th> <th>Lorem ipsum</th> <th>Lorem ipsum</th> </tr> <tr> <td>Etiam dolor</td> <td>100%</td> <td>Нет</td> </tr> <tr> <td>Etiam dolor</td> <td>100%</td> <td>Да</td> </tr> <tr> <td>Etiam dolor</td> <td>50%</td> <td>Да</td> </tr> <tr> <td>Etiam dolor</td> <td>0%</td> <td>Да</td> </tr> <tr> <td>Etiam dolor</td> <td>100%</td> <td>Да</td> </tr> </table> |
CSS часть
Сейчас добавим стили нашей таблице:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | table { overflow:hidden; border:1px solid #d3d3d3; background:#fefefe; width:70%; margin:5% auto 0; -moz-border-radius:5px; /* FF1+ */ -webkit-border-radius:5px; /* Saf3-4 */ border-radius:5px; -moz-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); } th, td { padding:18px 28px 18px; text-align:center; } th { padding-top:22px; text-shadow: 1px 1px 1px #fff; background:#e8eaeb; } td { border-top:1px solid #e0e0e0; border-right:1px solid #e0e0e0; } tr.odd-row td { background:#f6f6f6; } td.first, th.first { text-align:left } td.last { border-right:none; } td { background: -moz-linear-gradient(100% 25% 90deg, #fefefe, #f9f9f9); background: -webkit-gradient(linear, 0% 0%, 0% 25%, from(#f9f9f9), to(#fefefe)); } tr.odd-row td { background: -moz-linear-gradient(100% 25% 90deg, #f6f6f6, #f1f1f1); background: -webkit-gradient(linear, 0% 0%, 0% 25%, from(#f1f1f1), to(#f6f6f6)); } th { background: -moz-linear-gradient(100% 20% 90deg, #e8eaeb, #ededed); background: -webkit-gradient(linear, 0% 0%, 0% 20%, from(#ededed), to(#e8eaeb)); } tr:first-child th.first { -moz-border-radius-topleft:5px; -webkit-border-top-left-radius:5px; /* Saf3-4 */ } tr:first-child th.last { -moz-border-radius-topright:5px; -webkit-border-top-right-radius:5px; /* Saf3-4 */ } tr:last-child td.first { -moz-border-radius-bottomleft:5px; -webkit-border-bottom-left-radius:5px; /* Saf3-4 */ } tr:last-child td.last { -moz-border-radius-bottomright:5px; -webkit-border-bottom-right-radius:5px; /* Saf3-4 */ } |
Подсветка строки при наведении
Пример меню можно увидеть здесь:
Посмотреть примерСкачать
HTML часть
Эта таблица немного больше прошлой, но структура очень похожа:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | <table> <thead> <tr> <th>№</th> <th>Top 10 фильмов</th> <th>Год</th> </tr> </thead> <tr> <td>1</td> <td>Побег из Шоушенка</td> <td>1994</td> </tr> <tr> <td>2</td> <td>Крестный отец</td> <td>1972</td> </tr> <tr> <td>3</td> <td>Крестный отец: Часть II</td> <td>1974</td> </tr> <tr> <td>4</td> <td>Хороший, плохой, злой</td> <td>1966</td> </tr> <tr> <td>5</td> <td>Криминальное чтиво</td> <td>1994</td> </tr> <tr> <td>6</td> <td>12 разгневанных мужчин</td> <td>1957</td> </tr> <tr> <td>7</td> <td>Список Шиндлера</td> <td>1993</td> </tr> <tr> <td>8</td> <td>Пролетая над гнездом кукушки</td> <td>1975</td> </tr> <tr> <td>9</td> <td>Темный рыцарь</td> <td>2008</td> </tr> <tr> <td>10</td> <td>Властелин колец: Возвращение Короля</td> <td>2003</td> </tr> </table> |
CSS часть
Стили немного другие, потому что нам необходимо изменить цвет строки при наведении:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | .bordered { border: solid #ccc 1px; -moz-border-radius: 6px; -webkit-border-radius: 6px; border-radius: 6px; -webkit-box-shadow: 0 1px 1px #ccc; -moz-box-shadow: 0 1px 1px #ccc; box-shadow: 0 1px 1px #ccc; } .bordered tr:hover { background: #fbf8e9; -o-transition: all 0.1s ease-in-out; -webkit-transition: all 0.1s ease-in-out; -moz-transition: all 0.1s ease-in-out; -ms-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .bordered td, .bordered th { border-left: 1px solid #ccc; border-top: 1px solid #ccc; padding: 10px; text-align: left; } .bordered th { background-color: #dce9f9; background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9)); background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9); background-image: linear-gradient(top, #ebf3fc, #dce9f9); -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; border-top: none; text-shadow: 0 1px 0 rgba(255,255,255,.5); } .bordered td:first-child, .bordered th:first-child { border-left: none; } .bordered th:first-child { -moz-border-radius: 6px 0 0 0; -webkit-border-radius: 6px 0 0 0; border-radius: 6px 0 0 0; } .bordered th:last-child { -moz-border-radius: 0 6px 0 0; -webkit-border-radius: 0 6px 0 0; border-radius: 0 6px 0 0; } .bordered th:only-child{ -moz-border-radius: 6px 6px 0 0; -webkit-border-radius: 6px 6px 0 0; border-radius: 6px 6px 0 0; } .bordered tr:last-child td:first-child { -moz-border-radius: 0 0 0 6px; -webkit-border-radius: 0 0 0 6px; border-radius: 0 0 0 6px; } .bordered tr:last-child td:last-child { -moz-border-radius: 0 0 6px 0; -webkit-border-radius: 0 0 6px 0; border-radius: 0 0 6px 0; } |
Тем, кому лень писать код самостоятельно!
Существует специальный сервис, который позволяет генерировать стили для таблиц, лишь передвигая ползунки. Я сделал видео об этом сервисе, которое находится ниже. Сервис находится по ссылке — tablestyler.com (был найден новый сервис и ссылка обновлена 2 июня 2017 года). На видео идет видеообзор старого сервиса, но и с новым вы разберетесь 🙂 .
Вывод
Обязательно возьмите данную статью себе на заметку, потому что очень часто приходится оформлять таблицы, а с помощью последнего сервиса это можно сделать очень быстро и красиво :).
Успехов!
CSS-таблицы | CSS
Внешний вид HTML-таблиц можно существенно усовершенствовать с помощью CSS:
Посмотреть пример
Чтобы задать границы CSS таблицы, воспользуйтесь свойством border.
В примере ниже элементам <table>, <th> и <td> задается черная граница:
Пример
table, th, td { border: 1px solid black; }
Посмотреть демо
Обратите внимание, что у таблицы в приведенном выше примере двойная граница. Это из-за того, что и у <table>, и у <th> и <td> выставлены отдельные свойства границы.
Свойство border-collapse определяет, нужно ли объединять двойную границу в одну:
Пример
table { border-collapse: collapse; } table, th, td { border: 1px solid black; }
Посмотреть демо
Если вам нужна простая контурная рамка вокруг всей красивой таблицы CSS, то свойство border нужно применять к элементу <table>:
Пример
table { border: 1px solid black; }
Посмотреть демо
Ширина и высота таблицы определяется свойствами width и height.
В приведенном ниже примере ширина таблицы выставлена на 100%, а высота элементов <th> на 50px:
Пример
table { width: 100%; } th { height: 50px; }
Посмотреть демо
Свойство text-align предназначено для горизонтального выравнивания (по левому и правому краю, по центру) содержимого элементов <th> и <td>.
По умолчанию, содержимое элементов <th> выравнивается по центру, а элементов <td> — по левому краю.
В приведенном ниже примере оформления таблицы CSS к содержимому элементов <th> применяется выравнивание по левому краю:
Пример
Посмотреть демо
Свойство vertical-align предназначено для вертикального выравнивания (по верхней и нижней границе, а также посередине) содержимого внутри элементов <th> и <td>.
По умолчанию, содержимое <th> и <td> выравнивается посередине.
В приведенном ниже примере к содержимому элементов <td> применяется вертикальное выравнивание по нижней границе:
Пример
td { height: 50px; vertical-align: bottom; }
Посмотреть демо
Для регулирования расстояния между границей элемента и его содержимым воспользуйтесь свойством padding (для элементов <td> и <th>):
Пример
th, td { padding: 15px; text-align: left; }
Посмотреть демо
Можно использовать свойство border-bottom в элементах <th> и <td>, чтобы отделить строки CSS таблицы друг от друга горизонтальным разделителем:
Пример
th, td { border-bottom: 1px solid #ddd; }
Посмотреть демо
Воспользуйтесь селектором :hover в элементе <tr>, чтобы подсветить ячейки при наведении на них курсора мыши.
Пример
tr:hover {background-color: #f5f5f5}
Посмотреть демо
Чтобы получить CSS таблицы со строками разного цвета, используйте селектор nth-child(), и задайте всем четным и нечетным строкам разный цвет.
Пример
tr:nth-child(even) {background-color: #f2f2f2}
Посмотреть демо
В приведенном ниже примере показано, как задавать цвет фона и текста для элементов <th>:
Пример
th { background-color: #4CAF50; color: white; }
Посмотреть демо
Адаптивная таблица CSS будет показывать горизонтальный скроллинг, если окажется слишком большой для страницы или экрана.
Добавьте <div> с заданным свойством overflow-x: auto для элемента <table>, чтобы сделать таблицу адаптивной.
Пример
<div> <table> ... содержимое таблицы ... </table> </div>
Посмотреть демо
Больше примеров
Создаем причудливую таблицу
В этом примере показано, как можно создать забавную таблицу с помощью каскадных таблиц стилей CSS.
Выставляем расположение подписи таблицы
В данном примере показано, как можно расположить подпись к таблице при помощи CSS.
CSS-свойства таблицы
Свойства | Описание |
border | Позволяет одним выражением установить сразу все границы |
border-collapse | Позволяет объединять двойные границы в одну |
border-spacing | Позволяет указать расстояние между смежными ячейками |
caption-side | Отвечает за положение подписи к таблице |
empty-cells | Позволяет показать или скрыть границы для пустых ячеек в таблице |
table-layout | Позволяет использовать в таблице шаблонный алгоритм |
Данная публикация представляет собой перевод статьи «CSS Tables» , подготовленной дружной командой проекта Интернет-технологии.ру
Лучшие HTML / CSS шаблоны прайсов
В этой статье мы рассмотрим лучшие HTML / CSS шаблоны прайсов, которые легко интегрируются на сайт. Если вы уже задумывались над тем, чтобы создать свой уникальный прайс, то приведенные ниже шаблоны помогут в этом. Также мы перечислим руководства, которые помогут вам создавать собственные CSS таблицы.
Если простота — это ваше кредо, тогда этот набор, состоящий из трех шаблонов прайсов, может оказаться полезным. С его помощью возможно создание месячных и годовых тарифных планов, поддерживается анимация. Кроме этого шаблон является адаптивным.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Еще один плоский шаблон для таблиц цен со всеми основными функциями.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Самый компактный шаблон прайса, позволяющий добавлять данные об услугах и их стоимости.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Похож на один из уже перечисленных нами шаблонов, почти полная копия, отличающаяся только используемыми цветами. Но это все равно отличная красивая таблица CSS цен.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Простые и красивые таблицы цен для вашего сайта с добавлением анимации.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Крутой шаблон прайса с красивой шапкой, кнопкой в нижней части и областью описания.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Плоский шаблон, в котором реализован раскрывающийся с эффектом анимации прайс. Для этого используются каскадные таблицы стилей CSS.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Красивый шаблон прайса, который можно использовать на своем сайте для отображения информации о стоимости месячных планов и постоянной подписки.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Компактный и простой шаблон прайса со слайдером изображений для демонстрации галереи товаров.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Это бесплатный шаблон. Его можно использовать так, как вам нравится, данный шаблон отлично работает с фреймворком Bootstrap.
ДЕМО-ВЕРСИЯ | СКАЧАТЬ
Цветная CSS таблица цен отображается в современном минималистичном стиле с помощью комбинации трех цветов.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Простые прямоугольные блоки цен для любого раздела вашего сайта.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Чистый плоский дизайн с аккуратно размещенными элементами и жирным шрифтом, который читается на любом устройстве.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Мини-версия адаптивной таблицы CSS цен, с помощью которой можно продавать расширения или дополнительные функции.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Минималистичный и плоский макет, который поддерживает адаптивные функции.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Шаблон прайса, который напоминает WordPress. Ширина по умолчанию установлена на 80%, что делает всю таблицу слишком широкой, поэтому скриншот был сделан с шириной 50%.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Простой прайс для демонстрации доступных тарифных планов. Поставляется с выделенным «популярным» планом с помощью оформления таблицы CSS.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Из учебника вы узнаете, как использовать некоторые новые свойства CSS3 для создания красивого шаблона прайса. Его суть состоит в том, чтобы задать для столбцов стили блоков и списков, и получить красивый и уникальный дизайн.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Простой шаблон прайса. Каждый тарифный план содержит название, цену, список функций и фиолетовую кнопку регистрации.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Изучив это руководство, вы сможете создавать удивительные элементы пользовательской таблицы цен с использованием CSS3 свойств таблицы. Шаблоны уже содержат красивые эффекты наведения, созданные с помощью переходов CSS3. Вы сможете легко добавить их в свой интернет-магазин.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
На данный момент я работаю над премиум-сайтом WordPress и столкнулась с необходимостью создания приличной таблицы цен в стиле SaaS.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Изучив это руководство, вы научитесь создавать из пользовательского интерфейса Impressionist код и стили CSS3 для прайсов.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
В этом руководстве рассказывается, как создать современную таблицу цен в Photoshop. После того, как дизайн будет готов, мы реализуем его код с помощью HTML и каскадных таблиц стилей CSS.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Воссозданный шаблон прайсов с http://www.webs.com/pricing.htm.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Это адаптивная таблица цен для адаптивных тем.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Это плоская адаптивная таблица цен, созданная с помощью адаптивной таблицы CSS. Скачайте ее бесплатно и используйте в своих проектах.
ДЕМО-ВЕРСИЯ|СКАЧАТЬ
Данная публикация представляет собой перевод статьи «30 Best HTML CSS Pricing Table Templates, Tutorials» , подготовленной дружной командой проекта Интернет-технологии.ру
СSS Таблицы
Внешний вид таблицы HTML может быть значительно улучшена с помощью CSS:
Компания | Контакты | Страна |
---|---|---|
Alfreds Futterkiste | Мария Андерс | Германия |
Berglunds snabbköp | Кристина Берглунд | Швеция |
Centro comercial Moctezuma | Франсиско Чанг | Мексика |
Ernst Handel | Роланд Мендель | Австрия |
Island Trading | Хелен Беннетт | Великобритания |
Königlich Essen | Филипп Крамер | Германия |
Laughing Bacchus Winecellars | Йоши Таннфмури | Канада |
Magazzini Alimentari Riuniti | Иоанн Ровелли | Италия |
Границы таблицы
Чтобы задать границы таблицы в CSS, используйте свойство border
.
Пример ниже определяет черными границами для элемнтов <table>
, <th>
, и <td>
:
Обратите внимание, что таблица в примере выше имеет двойную границу.
Это потому, что обе таблицы и элименты <th>
,
и <td>
имеют отдельные границы.
Свернуть границы таблицы
Свойство border-collapse
задает, будут ли границы таблиц свернуты в одну границу:
Если вы хотите установить границы только вокруг таблицы, укажите свойство border
для <table>
:
Ширина и высота таблицы
Ширина и высота таблицы определяются свойством width
и height
.
В примере ниже задается ширина таблицы 100 пиклелей, а высота 50 пиклелей:
Горизонтальное выравнивание таблицы
Свойство text-align
задает горизонтальное выравнивание (слева, справа, или по центру) контента в тегах <th>
или <td>
.
По умолчанию содержание элемента <th>
выравниваниет по центру и содержание элемента <td>
выравниваниет по левому краю.
В следующем примере выравнивает текст слева в элементе <th>
:
Вертикальное выравнивание таблицы
Свойство vertical-align
задает вертикальное выравнивание в (верхней, нижней или по центру) контент в <th>
или <td>
.
По умолчанию вертикальное выравнивание содержимого в таблице, будет по центру (для обоих элементов <th>
и <td>
).
Следующий пример задает вертикальное выравнивание текста в нижней части для элемента <td>
):
Отступы в таблице
Чтобы контролировать пространство между границей и содержимым в таблице, используйте свойство padding
в элементе <th>
и <td>
:
Горизонтальные разделители таблицы
Имя | Фамилия | Сбережение |
---|---|---|
Андрей | Щипунов | $100 |
Сергей | Щипунов | $150 |
Леонид | Щипунов | $300 |
Добавить свойство border-bottom
в <th>
и <td>
для горизонтальных разделителей:
Таблица при наведении
Используйте селектор :hover
в <tr>
для выделения строк таблицы при наведении:
Имя | Фамилия | Сбережение |
---|---|---|
Андрей | Щипунов | $100 |
Сергей | Щипунов | $150 |
Леонид | Щипунов | $300 |
Полосатая таблица
Имя | Фамилия | Сбережение |
---|---|---|
Андрей | Щипунов | $100 |
Сергей | Щипунов | $150 |
Леонид | Щипунов | $300 |
Для полосатой таблицы, использовать селектор nth-child()
и добавить background-color
на всех четных (или нечетных) строк таблицы:
Цвет заголовка таблицы
Пример ниже указывает цвет фона и цвет текста элемента <th>
:
Имя | Фамилия | Сбережение |
---|---|---|
Андрей | Щипунов | $100 |
Сергей | Щипунов | $150 |
Леонид | Щипунов | $300 |
Отзывчивая таблица
В отзывчивой таблице будет отображаться горизонтальная полоса прокрутки, если экран слишком мал для отображения полного содержимого:
Имя | Фамилия | Очки | Очки | Очки | Очки | Очки | Очки | Очки | Очки | Очки | Очки | Очки | Очки |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Андрей | Щипунов | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 |
Сергей | Щипунов | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 |
Леонид | Щипунов | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 |
Добавьте контейнер элемент <div>
в overflow-x:auto
внутри элемента <table>
, чтобы сделать его отзывчивым:
Еще примеры
Установить шикарную таблицу
Пример демонстрирует, как создать шикарную таблицу.
Установить заголовок таблицы
Пример демонстрирует, как расположить заголовок таблицы.
Проверьте себя с помощью упражнений!
Свойства CSS таблицы
Свойство | Описание |
---|---|
border | Устанавливает все свойства границы в одном объявлении |
border-collapse | Устанавливает границы таблицы должны ли быть свернуты |
border-spacing | Устанавливает расстояние между границами соседних ячеек |
caption-side | Устанавливает размещение таблицы заголовка |
empty-cells | Устанавливает следует ли отображать границы и фон пустых ячеек в таблице |
table-layout | Устанавливает алгоритм макета компоновки для использования в таблице |
Оформление таблиц | WebReference
Таблицы являются широко используемым элементом для представления различных данных на презентациях, лекциях, в рекламных листовках и не только. Благодаря своей наглядности, универсальности и простоте таблицы также повсеместно применяют на сайтах, чтобы лучше донести до читателя нужный материал. Добавляя к таблицам всю мощь стилей можно весьма удачно вписать таблицы в дизайн сайта, наглядно и красиво представить табличные данные.
Ширина таблицы
По умолчанию ширина таблицы устанавливается браузером самостоятельно, исходя из объёма в ней табличных данных. Если текста в ячейках много, тогда таблица будет занимать всю доступную ей ширину, а если мало, то ширина таблицы автоматически уменьшится. При наличии на странице нескольких таблиц их разная ширина выглядит порой небрежно. Так что лучше явно задать ширину таблицы в процентах, пикселях, em или любых других единицах CSS, как показано в примере 1.
Пример 1. Ширина таблицы в процентах
table { width: 100%; }
.tbl-medium { width: 60%; }
.tbl-small { width: 200px; }
В данном примере ширина 100% применяется ко всем таблицам. Опять же, классы помогают установить ширину для выбранных таблиц задействуя ранее созданный класс. Чтобы указать таблице ширину в 200 пикселей надо добавить к элементу <table> класс tbl-small.
<table>
Выравнивание таблиц
Исходно любая таблица располагается по левому краю окна браузера. Можно выровнять её по центру, если только таблица не занимает всю доступную область, другими словами, меньше 100%. Для этого к стилю таблицы следует добавить отступы через свойство margin со значением auto, как показано в примере 2.
Пример 2. Выравнивание таблицы с помощью margin
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таблица</title>
<style>
table {
margin: auto; /* Выравнивание по центру */
}
</style>
</head>
<body>
<table>
...
</table>
</body>
</html>
В данном примере для всех таблиц на странице задано выравнивание по центру.
Цвет фона
Цвет фона одновременно всех ячеек таблицы устанавливается через свойство background, которое применяется к селектору table. При этом следует помнить о правилах использования стилей, в частности, наследовании свойств элементов. Если одновременно с table задать цвет у селектора td или th, то он и будет установлен в качестве фона (пример 3).
Пример 3. Цвет фона
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таблица</title>
<style>
table {
background: #f5e8d0; /* Цвет фона таблицы */
border-spacing: 0; /* Расстояние между ячеек */
}
th {
background: #496791; /* Цвет фона ячеек */
color: #fff; /* Цвет текста */
}
td, th {
padding: 5px 10px; /* Поля в ячейках */
}
</style>
</head>
<body>
<table>
<tr>
<th rowspan="2">Вид соединения</th>
<th colspan="2">Поля допусков ширины шпоночного паза</th>
</tr>
<tr>
<th>Вал</th><th>Втулка</th>
</tr>
<tr>
<td>Свободное</td><td>H9</td><td>D10</td>
</tr>
<tr>
<td>Нормальное</td><td>N9</td><td>I<sub>s</sub>9</td>
</tr>
<tr>
<td>Плотное</td><td colspan="2">P9</td>
</tr>
</table>
</body>
</html>
Результат данного примера показан на рис. 1.
Рис. 1. Изменение цвета фона
Если нам требуется сделать зебру — так называется чередование строк разного цвета, то следует воспользоваться псевдоклассом :nth-child, добавляя его к селектору tr. Чтобы зебра распространялась только на тело таблицы, а не её заголовок, отделим их друг от друга с помощью элементов <thead> и <tbody> (пример 4).
Пример 4. Создание зебры
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таблица</title>
<style>
table {
width: 100%; /* Ширина таблицы */
border-collapse: collapse; /* Убираем двойные линии */
}
thead {
background: #f5e8d0; /* Цвет фона заголовка */
}
td, th {
padding: 5px; /* Поля в ячейках */
border: 1px solid #333; /* Параметры рамки */
}
tbody tr:nth-child(even) {
background: #f0f0f0; /* Зебра */
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<th rowspan="2">Интервалы размеров, мм</th>
<th colspan="4">Допуск IT, мкм, для квалитетов</th>
</tr>
<tr>
<th>5</th><th>6</th><th>7</th><th>8</th>
</tr>
</thead>
<tbody>
<tr>
<td>До 3</td><td>4</td><td>6</td><td>10</td><td>14</td>
</tr>
<tr>
<td>Св. 3 до 6</td><td>5</td><td>8</td><td>12</td><td>18</td>
</tr>
<tr>
<td>Св. 6 до 10</td><td>6</td><td>9</td><td>15</td><td>22</td>
</tr>
<tr>
<td>Св. 10 до 18</td><td>8</td><td>11</td><td>18</td><td>27</td>
</tr>
<tr>
<td>Св. 18 до 30</td><td>9</td><td>13</td><td>21</td><td>33</td>
</tr>
<tr>
<td>Св. 30 до 50</td><td>11</td><td>16</td><td>25</td><td>39</td>
</tr>
<tr>
<td>Св. 50 до 80</td><td>13</td><td>19</td><td>30</td><td>46</td>
</tr>
</tbody>
</table>
</body>
</html>
Результат данного примера показан на рис. 2.
Рис. 2. Зебра
Значение even у селектора :nth-child применяет стиль ко всем чётным строкам и задаёт их цвет фона. Можно, также, поменять его на odd, тогда серым цветом будут выделяться нечётные строки.
Аналогичным образом цветом выделяются не строки, а колонки, для этого следует использовать селектор tbody td:nth-child(even).
Поля внутри ячеек
Полем называется расстояние между границей ячейки и её содержимым. Без полей текст в таблице «налипает» на рамку, ухудшая тем самым его восприятие, добавление же полей позволяет улучшить читабельность текста. Для этой цели применяется стилевое свойство padding, которое работает с селектором td или th, как показано выше в примерах 3 и 4. Обычно указывают одно значение, оно тогда задаёт пустое пространство вокруг содержимого ячейки сразу со всех сторон. Два значения пишутся, когда надо задать разные поля по вертикали (первое значение) и горизонтали (второе значение).
Расстояние между ячеек
Между ячеек имеется небольшое пустое расстояние, которое не видно, пока для ячеек не установить границу или фоновый цвет. Исходно это расстояние равно 2px и его можно изменить с помощью свойства border-spacing, добавляя его к селектору table (пример 5).
Пример 5. Использование border-spacing
table {
border-spacing: 3px; /* Расстояние между ячеек */
}
thead th {
background: #e08156; /* Цвет фона заголовка */
color: #333; /* Цвет текста */
}
td, th {
padding: 5px; /* Поля в ячейках */
background: #4c715b; /* Цвет фона ячеек */
color: #f5e8d0; /* Цвет текста */
}
Добавляя этот стиль к любой таблице получим результат продемонстрированный на рис. 3.
Рис. 3. Вид таблицы с расстоянием между ячеек
Если к table добавляется свойство border-collapse со значением collapse, то border-spacing игнорируется, потому как расстояния между ячеек уже нет.
Границы и рамки
Чтобы чётко отделить содержимое одной ячейки от другой, к ячейкам добавляются границы. За их создание отвечает стилевое свойство border, которое применяется к элементам (<td> или <th>). Однако здесь нас подстерегают подводные камни. Поскольку рамка создаётся для каждой ячейки, то в местах соприкосновения ячеек получается граница удвоенной толщины. Для устранения указанной особенности существует несколько путей. Самый простой — воспользоваться свойством border-collapse со значением collapse. В его задачу входит отслеживать соприкосновение линий и вместо двойной границы изображать одинарную. Это свойство достаточно добавить к селектору table, а дальше оно всё сделает самостоятельно (пример 6).
Пример 6. Применение свойства border-collapse при создании рамок таблицы
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таблица</title>
<style>
table {
border-collapse: collapse; /* Убираем двойные линии */
width: 100%; /* Ширина таблицы */
border-spacing: 0; /* Расстояние между ячеек */
}
td {
border: 2px solid #333; /* Параметры границ */
padding: 4px; /* Поля в ячейках */
text-align: center; /* Выравнивание по центру */
}
</style>
</head>
<body>
<table>
<tr><td>O</td><td>X</td><td>X</td></tr>
<tr><td>O</td><td>O</td><td>X</td></tr>
<tr><td>X</td><td>X</td><td>O</td></tr>
</table>
</body>
</html>
Разница между границами таблицы при добавлении свойства border-collapse, а также без него, представлена на рис. 4.
а — свойство не установлено
б — свойство установлено
Рис. 4. Вид таблицы при использовании border-collapse
На рис. 4а показана рамка таблицы, используемая по умолчанию. Обратите внимание, что внутри таблицы все линии имеют удвоенную толщину. Добавление border-collapse убирает эту особенность, и толщина всех линий становится одинаковой (рис. 4б).
Линии не обязательно делать для всех сторон ячеек, согласно дизайну они могут отделять одну строку или колонку от другой. Для этого мы используем свойства border-bottom, border-left и другие подобные. Применять границы к элементам <tr>, <thead>, <tfoot> и <tbody> нельзя, поэтому добавляем их к селектору table и td (пример 7).
Пример 7. Линии между строк
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таблица</title>
<style>
table {
width: 100%; /* Ширина таблицы */
border-collapse: collapse; /* Убираем двойные линии */
border-bottom: 2px solid #333; /* Линия снизу таблицы */
border-top: 2px solid #333; /* Линия сверху таблицы */
}
td {
text-align: center; /* Выравнивание по центру */
border-bottom: 1px solid #333;
border-top: 1px solid #333;
}
td, th {
padding: 5px; /* Поля в ячейках */
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<th rowspan="2">Вид соединения</th>
<th colspan="2">Поля допусков ширины шпоночного паза</th>
</tr>
<tr>
<th>Вал</th><th>Втулка</th>
</tr>
</thead>
<tbody>
<tr>
<td>Свободное</td><td>H9</td><td>D10</td>
</tr>
<tr>
<td>Нормальное</td><td>N9</td><td>I<sub>s</sub>9</td>
</tr>
<tr>
<td>Плотное</td><td colspan="2">P9</td>
</tr>
</tbody>
</table>
</body>
</html>
Результат данного примера показан на рис. 5.
Рис. 5. Таблица с горизонтальными линиями
Выравнивание текста в ячейках
По умолчанию текст в ячейке таблицы выравнивается по левому краю и по центру высоты. Исключением служит элемент <th>, он определяет ячейку заголовка, в котором выравнивание происходит по центру. Чтобы изменить способ выравнивания применяется стилевое свойство text-align (пример 8).
Пример 8. Выравнивание содержимого ячеек по горизонтали
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таблица</title>
<style>
table {
border-collapse: collapse; /* Убираем двойные линии */
width: 100%; /* Ширина таблицы */
}
th {
background: #dfebb7; /* Цвет фона ячейки */
text-align: left; /* Выравнивание по левому краю */
}
td {
text-align: center; /* Выравнивание по центру */
}
th, td {
border: 1px solid black; /* Параметры рамки */
padding: 4px; /* Поля вокруг текста */
}
</style>
</head>
<body>
<table>
<tr><th>Заголовок 1</th><td>Ячейка 1</td><td>Ячейка 2</td></tr>
<tr><th>Заголовок 2</th><td>Ячейка 3</td><td>Ячейка 4</td></tr>
</table>
</body>
</html>
В данном примере содержимое <th> выравнивается по левому краю, а содержимое <td> — по центру. Результат примера показан ниже (рис. 6).
Рис. 6. Выравнивание текста в ячейках
Выравнивание по вертикали в ячейке всегда происходит по её центру, если это не оговорено особо. Это не всегда удобно, особенно для таблиц, у которых содержимое ячеек различается по высоте. В таком случае выравнивание устанавливают по верхнему краю ячейки с помощью свойства vertical-align со значением top, как показано в примере 9.
Пример 9. Выравнивание содержимого ячеек по вертикали
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таблица</title>
<style>
th {
background: #496791; /* Цвет фона ячеек заголовка */
color: #fff; /* Цвет текста */
}
td {
background: #f5e8d0; /* Цвет фона ячеек */
text-align: center; /* Выравниваем по центру */
}
td, th {
padding: 5px 10px; /* Поля в ячейках */
vertical-align: top; /* Выравниваем по верхнему краю */
}
</style>
</head>
<body>
<table>
<tr>
<th rowspan="2">Вид соединения</th>
<th colspan="2">Поля допусков ширины шпоночного паза</th>
</tr>
<tr>
<th>Вал</th><th>Втулка</th>
</tr>
<tr>
<td>Свободное</td><td>H9</td><td>D10</td>
</tr>
<tr>
<td>Нормальное</td><td>N9</td><td>I<sub>s</sub>9</td>
</tr>
<tr>
<td>Плотное</td><td colspan="2">P9</td>
</tr>
</table>
</body>
</html>
В данном примере выравнивание текста происходит по верхнему краю. Результат примера показан на рис. 7.
Рис. 7. Выравнивание текста в ячейках
Автор и редакторы
Автор: Влад Мержевич
Последнее изменение: 11.08.2018
Редакторы: Влад Мержевич
Таблицы и стили | htmlbook.ru
Таблицы являются широко используемым элементом для представления различных данных на презентациях, лекциях, в рекламных листовках и не только. Благодаря своей наглядности, универсальности и простоте таблицы также повсеместно применяют на сайтах, чтобы лучше донести до читателя нужный материал. Однако в большинстве случаев на веб-страницах используют весьма убогие средства по представлению табличных данных. Вместе с тем воспользовавшись мощью стилей, можно весьма расширить средства по оформлению таблиц, удачно вписать их в дизайн сайта и нагляднее представить табличные данные.
Далее речь пойдет об оформлении таблиц с помощью стилей. Но в начале обговорим некоторые моменты, которые помогут лучше понять, что же мы делаем.
Цвет фона ячеек
Цвет фона одновременно всех ячеек таблицы устанавливается через свойство background, которое применяется к селектору TABLE. При этом следует помнить о правилах использования стилей, в частности, наследовании свойств элементов. Если одновременно с TABLE задать цвет у селектора TD или TH, то он и будет установлен в качестве фона (пример 1).
Пример 1. Цвет фона
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Таблицы</title>
<style type="text/css">
TABLE {
background: maroon; /* Цвет фона таблицы */
color: white; /* Цвет текста */
}
TD {
background: navy; /* Цвет фона ячеек */
}
</style>
</head>
<body>
<table cellpadding="4" cellspacing="1">
<tr><th>Заголовок 1</th><th>Заголовок 2</th></tr>
<tr><td>Ячейка 3</td><td>Ячейка 4</td></tr>
</table>
</body>
</html>
В данном примере получим синий цвет фона у ячеек (тег <td>) и красный у заголовка (тег <th>). Это связано с тем, что стиль для селектора TH не определен, поэтому «просвечивается» фон родителя, в данном случае, селектора TABLE. А цвет для селектора TD указан явно, вот ячейки и «заливаются» синим цветом.
То же самое происходит и с цветом текста. Для всех элементов таблицы в примере он установлен белым.
Результат данного примера показан на рис. 1.
Рис. 1. Изменение цвета фона
Поля внутри ячеек
Полем называется расстояние между краем содержимого ячейки и ее границей. Обычно для этой цели применяется атрибут cellpadding тега <table>. Он определяет значение поля в пикселах со всех сторон ячейки. Допускается использовать стилевое свойство padding, добавляя его к селектору TD, как показано в примере 2.
Пример 2. Поля в таблицах
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Таблицы</title>
<style type="text/css">
TABLE {
background: white; /* Цвет фона таблицы */
color: white; /* Цвет текста */
}
TD, TH {
background: maroon; /* Цвет фона ячеек */
padding: 5px; /* Поля вокруг текста */
}
</style>
</head>
<body>
<table cellspacing="1">
<tr><th>Заголовок 1</th><th>Заголовок 2</th></tr>
<tr><td>Ячейка 3</td><td>Ячейка 4</td></tr>
</table>
</body>
</html>
В данном примере с помощью группирования селектором поля установлены одновременно для селектора TD и TH.
Результат данного примера показан на рис. 2.
Рис. 2. Поля в ячейках
Если применяется стилевое свойство padding для ячеек таблицы, то действие атрибута cellpadding тега <table> игнорируется.
Границы и рамки
Линии между ячейками можно установить несколькими методами, при этом рассмотрим два из них, которые непосредственно связаны со стилями.
Использование атрибута cellspacing
Известно, что атрибут cellspacing тега <table> задает расстояние между ячейками таблицы. Если используется разный цвет фона таблицы и ячеек, то между ячейками возникнет сетка линий, цвет которых совпадает с цветом таблицы, а толщина равна значению атрибута cellspacing в пикселах. В вышеприведенном примере 2 этот эффект показан, поэтому повторять его не будем.
Заметим, что это не совсем удобный способ создания границ, поскольку он имеет ограниченную область применения. Так можно получить только одноцветную сетку, а не вертикальные или горизонтальные линии в нужных местах.
Применение свойства border
Стилевое свойство border одновременно задает цвет границы, ее стиль и толщину вокруг элемента. Когда требуется создать отдельные линии на разных сторонах, лучше использовать его производные — border-left, border-right, border-top и border-bottom, они соответственно определяют границу слева, справа, сверху и снизу.
Применяя свойство border к селектору TABLE, мы добавляем рамку вокруг таблицы в целом, а к селектору TD или TH — рамку вокруг ячеек (пример 3).
Пример 3. Добавление двойной рамки
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Таблицы</title>
<style type="text/css">
TABLE {
background: #dc0; /* Цвет фона таблицы */
border: 5px double #000; /* Рамка вокруг таблицы */
}
TD, TH {
padding: 5px; /* Поля вокруг текста */
border: 1px solid #fff; /* Рамка вокруг ячеек */
}
</style>
</head>
<body>
<table>
<tr><th>Заголовок 1</th><th>Заголовок 2</th></tr>
<tr><td>Ячейка 3</td><td>Ячейка 4</td></tr>
</table>
</body>
</html>
В данном примере используется двойная рамка черного цвета вокруг самой таблицы и сплошная рамка белого цвета вокруг каждой ячейки.
Результат примера показан на рис. 3.
Рис. 3. Граница вокруг таблицы и ячеек
Обратите внимание, что в месте состыковки ячеек образуются двойные линии. Они получаются опять же за счет действия атрибута cellspacing тега <table>. Хотя в коде примера этот атрибут нигде не фигурирует, браузер использует его по умолчанию. Если задать <table cellspacing=»0″>, то получим не двойные, а одинарные линии, но удвоенной толщины. Для изменения указанной особенности применяется стилевое свойство border-collapse со значением collapse, которое добавляется к селектору TABLE (пример 4).
Пример 4. Создание одинарной рамки
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Таблицы</title>
<style type="text/css">
TABLE {
border-collapse: collapse; /* Убираем двойные границы между ячейками */
background: #dc0; /* Цвет фона таблицы */
border: 4px solid #000; /* Рамка вокруг таблицы */
}
TD, TH {
padding: 5px; /* Поля вокруг текста */
border: 2px solid green; /* Рамка вокруг ячеек */
}
</style>
</head>
<body>
<table>
<tr><th>Заголовок 1</th><th>Заголовок 2</th></tr>
<tr><td>Ячейка 3</td><td>Ячейка 4</td></tr>
</table>
</body>
</html>
В данном примере создается сплошная линия зеленого цвета между ячейками и черная вокруг таблицы. Все границы внутри таблицы имеют одинаковую толщину.
Результат примера показан на рис. 4.
Рис. 4. Граница вокруг таблицы
При добавлении border-collapse: collapse значение атрибута cellspacing тега <table> игнорируется.
Выравнивание содержимого ячеек
По умолчанию текст в ячейке таблицы выравнивается по левому краю. Исключением из этого правила служит тег <th>, он определяет заголовок, в котором выравнивание происходит по центру. Чтобы изменить способ выравнивания применяется стилевое свойство text-align (пример 5).
Пример 5. Выравнивание содержимого ячеек по горизонтали
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Таблицы</title>
<style type="text/css">
TABLE {
border-collapse: collapse; /* Убираем двойные линии между ячейками */
width: 300px; /* Ширина таблицы */
}
TH {
background: #fc0; /* Цвет фона ячейки */
text-align: left; /* Выравнивание по левому краю */
}
TD {
background: #fff; /* Цвет фона ячеек */
text-align: center; /* Выравнивание по центру */
}
TH, TD {
border: 1px solid black; /* Параметры рамки */
padding: 4px; /* Поля вокруг текста */
}
</style>
</head>
<body>
<table>
<tr><th>Заголовок 1</th><td>Ячейка 1</td><td>Ячейка 2</td></tr>
<tr><th>Заголовок 2</th><td>Ячейка 3</td><td>Ячейка 4</td></tr>
</table>
</body>
</html>
В данном примере содержимое тега <th> выравнивается по левому краю, а содержимое тега <td> — по центру. Результат примера показан ниже.
Рис. 5. Выравнивание текста в ячейках
Выравнивание по вертикали в ячейке всегда происходит по ее центру, если это не оговорено особо. Это не всегда удобно, особенно для таблиц, у которых содержимое ячеек различается по высоте. В таком случае выравнивание устанавливают по верхнему краю ячейки с помощью свойства vertical-align, как показано в примере 6.
Пример 6. Выравнивание содержимого ячеек по вертикали
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Таблицы</title>
<style type="text/css">
TABLE {
border-collapse: collapse; /* Убираем двойные линии между ячейками */
width: 300px; /* Ширина таблицы */
}
TH, TD {
border: 1px solid black; /* Параметры рамки */
text-align: center; /* Выравнивание по центру */
padding: 4px; /* Поля вокруг текста */
}
TH {
background: #fc0; /* Цвет фона ячейки */
height: 40px; /* Высота ячеек */
vertical-align: bottom; /* Выравнивание по нижнему краю */
padding: 0; /* Убираем поля вокруг текста */
}
</style>
</head>
<body>
<table>
<tr><th>Заголовок 1</th><th>Заголовок 2</th></tr>
<tr><td>Ячейка 1</td><td>Ячейка 2</td></tr>
</table>
</body>
</html>
В данном примере устанавливается высота заголовка <th> как 40 пикселов и выравнивание текста происходит по нижнему краю. Результат примера показан на рис. 6.
Рис. 6. Выравнивание текста в ячейках