sonyps4.ru

Толщина рамки таблицы задается с помощью атрибута. Простой способ создать рамку вокруг элемента

Сетка представляет собой набор горизонтальных и вертикальных линий между ячейками таблицы, которые отделяют содержимое ячеек друг от друга. Сетка используется по умолчанию, если включить отображение границ с помощью атрибута border тега

. Однако такие линии отображаются по-разному в различных браузерах, поэтому применение стилей не только позволит удобно управлять видом таблиц, но и сделает их однотипными.

Для создания таблицы показанной на рис. 1 потребуется всего ничего: установить стилевое свойство border для каждой ячейки и воспользоваться свойством border-collapse .

При добавлении свойства border к селектору TD или TH между ячейками возникают двойные линии, которые образуются за счет соприкосновения рамок вокруг ячеек. Чтобы этого не произошло, для селектора TABLE указывается свойство border-collapse со значением collapse , как показано в примере 1.

Пример 1. Создание сетки

Таблица

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

В данном примере также устанавливается цвет фона для ячеек заголовка (тег ) через свойство background .

Как вариант, можно вообще убрать рамку вокруг таблицы, оставив только линии внутри нее (рис. 2).

При этом удобнее всего будет не убрать рамку, а спрятать ее, задав ей цвет, совпадающий с цветом фона веб-страницы. Так, в примере 2 фон страницы задан белым и такого же цвета используется граница, которая добавляется к селектору TABLE .

Пример 2. Таблица без внешней рамки

Таблица

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

В данном примере толщина линий между ячейками составляет один пиксел, а белая рамка вокруг — два пиксела, т.е. на один пиксел больше. Это требуется для того, чтобы надежно скрыть внешнюю границу вокруг таблицы.

Табличные данные - информация, которую можно отобразить в виде таблицы и логически разделить по столбцам и строкам. Для отображения табличных данных на веб-страницах используется HTML тег

, представляющий из себя контейнер с содержимым таблицы. Контент HTML таблицы описывается построчно, каждая строка начинается с открывающего тега и заканчивается закрывающим тегом .

Внутри тега

располагаются ячейки таблицы, представленные тегами охватывает только верхнюю строку таблицы с ее заголовком. Для этого тега в стилях одновременно устанавливается цвет фона и картинка, которая приведена на рис. 4. Хотя цвет под рисунком не виден, лучше его всегда добавлять, например, для случая отключения пользователем отображения изображений в браузере.

В этом примере используются вложенные таблицы, то есть одна таблица в другой. В строке 1 мы открываем первую таблицу и наполняем её темным цветом, в данном случае чёрным (# 00 00 00). Один из параметров наружной таблицы - cellspacing или cellpadding - должен быть равен 0, а другой 1. В строке 4 мы открываем новую таблицу с белым фоном (# FF FF FF). Важным параметром вложенной таблицы является её ширина - width="100%" . Таблицы следует закрывать в обратном порядке - сначала вложенную, затем наружную.

Вышеописанный вариант можно применить с целью создания рамки для всей страницы, но следует учесть, что для страниц с большим колличеством информации он не пригоден, так как браузер, прежде чем показать содержание таблицы, должен прочесть её до конца. Таким образом посетитель несколько секунд будет видеть просто пустой экран.

Рамка 2

В этом примере мы обходимся одной таблицей. Для создания рамки здесь используется специально для этого предназначенный параметр border , которому присваивается значение 1. Одновременно параметр cellspacing приравнивается к 0, иначе рамка будет выглядеть так:

или . Именно ячейки содержат весь контент таблицы, отображаемый на веб-странице.

Рамка таблицы

По умолчанию HTML таблица на веб-странице отображается без рамки, для добавления рамки к таблице, как и ко всем другим элементам, используется CSS свойство border . Но стоит обратить внимание на то, что если добавить рамку только к элементу

, то она отобразиться вокруг всей таблицы. Для того, чтобы ячейки таблицы тоже имели рамку, надо будет установить свойство border и для элементов , который предназначен для хранения одной или нескольких строк, которые представлены вверху таблицы. Для этого тега добавляем стилевое свойство background , оно одновременно определяет цвет фона и фоновый рисунок, а также его повторяемость (пример 3).

Пример 3. Использование фонового рисунка

Таблица

и .

Table, th, td { border: 1px solid black; } Попробовать »

Теперь и таблица и ячейки имеют рамки, при этом и каждая ячейка и таблица имеют свои собственные рамки. В результате между рамками появилось пустое пространство, управлять размером этого пространства позволяет свойство border-spacing , которое задается для всей таблицы целиком. Другими словами, нельзя управлять промежутками между различными ячейками индивидуально.

Даже если убрать промежутки между ячейками с помощью значения 0 свойства border-spacing , то рамки ячеек будут соприкасаться друг с другом, удваиваясь. Для объединения рамок ячеек используется свойство border-collapse . Оно может принимать два значения:

  • separate: является значением по умолчанию. Ячейки отображаются на небольшом расстоянии друг от друга, каждая ячейка имеет свою собственную рамку.
  • collapse: соединяет соседние рамки в одну, все промежутки между ячейками, а также между ячейками и рамкой таблицы игнорируются.
Название документа
ИмяФамилия
ГомерСимпсон
МарджСимпсон

ИмяФамилия
ГомерСимпсон
МарджСимпсон
Попробовать »

Размер таблицы

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

Th, td { padding: 7px; } Попробовать »

Размер таблицы зависит от ее содержимого, но часто возникают ситуации, когда таблица оказывается слишком узкой и появляется необходимость ее растянуть. Ширину и высоту таблицы можно изменять с помощью свойств width и height , задавая нужные размеры или самой таблице или ячейкам:

Table { width: 70%; } th { height: 50px; } Попробовать »

Выравнивание текста

По умолчанию текст в заголовочных ячейках таблицы выравнивается по центру, а в обычных ячейках текст выровнен по левому краю, используя свойство text-align можно управлять выравниванием текста по горизонтали.

CSS свойство vertical-align позволяет управлять выравниванием текстового содержимого по вертикали. По умолчанию текст выровнен вертикально по центру ячеек. Вертикальное выравнивание можно переопределить с помощью одного из значений свойства vertical-align:

  • top: текст выравнивается по верхней границе ячейки
  • middle: выравнивает текст по центру (значение по умолчанию)
  • bottom: текст выравнивается по нижней границе ячейки
Название документа
ИмяФамилия
ГомерСимпсон
МарджСимпсон
Попробовать »

Чередование фонового цвета строк таблицы

При просмотре больших таблиц, содержащих много строк с большим количеством информации, бывает трудно отследить, какие данные относятся к конкретной строке. Чтобы помочь пользователям сориентироваться, можно использовать два разных фоновых цвета поочередно. Для создания описанного эффекта можно использовать селектор class , добавляя его к каждой второй строке таблицы:

Название документа

ИмяФамилияПоложение
ГомерСимпсонотец
МарджСимпсонмать
БартСимпсонсын
ЛизаСимпсондочь
Попробовать »

Добавлять атрибут class к каждой второй строке довольно утомительное занятие. В CSS3 был добавлен псевдо-класс:nth-child , позволяющий решить эту проблему альтернативным путем. Теперь эффекта чередования можно достичь исключительно средствами CSS, не прибегая к изменению HTML-разметки документа. С помощью псевдо-класса:nth-child можно выбрать все четные или нечетные строки таблицы, используя одно из ключевых слов: even (четные) или odd (нечетные):

Tr:nth-child(odd) { background-color: #EAF2D3; } Попробовать »

Изменение фона строки при наведении курсора

Еще одним способом повышения удобочитаемости табличных данных является изменение фонового цвета строки при наведении на нее курсора мыши. Это поможет выделить нужное содержимое таблицы и повысит визуальное восприятие данных.

Реализовать такой эффект очень просто, для этого нужно добавить псевдо-класс:hover к селектору строки таблицы и задать нужный цвет фона:

Tr:hover { background-color: #E0E0FF; } Попробовать »

Выравнивание таблицы по центру

Выравнивание HTML таблицы по центру возможно только в том случае, если ширина таблицы меньше, чем ширина её родительского элемента. Чтобы выровнять таблицу по центру, надо воспользоваться свойством margin , задав ему минимум два значения: первое значение будет отвечать за внешний отступ таблицы сверху и снизу, а второе - за автоматическое выравнивание по центру:

Table { margin: 10px auto; } Попробовать »

Если вам нужны разные отступы сверху и снизу таблицы, то можно задать свойству margin три значения: первое будет отвечать за отступ сверху, второе за выравнивание по горизонтали, а третье за отступ снизу:

Table { margin: 10px auto 30px; }

Рамка вокруг таблицы позволяет акцентировать на ней внимание, отделить от остального содержимого веб-страницы и расширить набор средств по дизайну таблиц.

Для создания рамки применяется стилевое свойство border , которое добавляется к селектору TABLE . Также эффектно смотрится таблица, когда цвет рамки совпадает с цветом фона заголовка (тег

), как показано на рис. 1.

В примере 1 показано, как создать такую простую таблицу.

Пример 1. Создание рамки вокруг таблицы

Таблица

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

В данном примере выравнивание текста во всех ячейках происходит по левому краю, что не всегда удобно. На рис. 2 показана таблица, у которой содержимое ячеек выравнивается по центру за исключением левой колонки, где текст выравнивается по левому краю.

Изменение выравнивания происходит с помощью стилевого свойства text-align , при этом для отдельных ячеек требуется вводить новый класс, чтобы гибко управлять некоторыми характеристиками (пример 2).

Пример 2. Таблица с выравниванием содержимого ячеек

Таблица

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

В данном примере добавляется стилевой класс с именем lc , он добавляется к ячейкам левой колонки для изменения выравнивания содержимого и создания жирного начертания текста.

Эффектно смотрится таблица, у которой фон заголовка выполнен в виде градиента (рис. 3). При этом создание подобной таблицы не представляет особой сложности.

При этом в качестве фона применяется заранее заготовленный рисунок, например, как показано на рис. 4.

Для добавления фона только к одной строке таблицы имеется несколько способов. Можно воспользоваться тегом

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

В данном примере тег

При помощи таблиц можно добится очень интересных визуальных эффектов при создании тонких рамок, почти одинаково интерпретируемых всеми броузерами. Рассмотрим для этого несколько примеров.

Рамка 1

параметр cellspacing = 1

параметр cellspacing = 2

параметр cellspacing = 3

Этот вариант проще первого, но, к сожалению, несовсем одинаково интерпретируется Internet Explorer"ом и Netscape"ом.

Рамка 3
















<table border="0" cellspacing="0" cellpadding="0">










Так это выглядит









Если два предыдущих варианта выводят на экран в разных броузерах рамки, хоть и минимально, но разной толщины, то третий пример интерпретируется распространёнными броузерами Internet Explorer 4.x/5.x/6, Netscape 4.x/6.x и Opera 6.x одинаково, что касается толщины рамки. Считаю уместным упомянуть, что больше всего проблем доставляет веб-дизайнеру Netscape 4.x.
Но расмотрим подробнее третий вариант. В его основе лежит таблица из 9 клеток, представленная ниже:

1

2

3

4

6

7

8

9

Все клетки, кроме 5ой, закрашиваются чёрным цветом, пятая - белым. Фон самой таблицы в данном случае не важен. Затем к клеткам 1-3 и 7-9 добавлятся параметр height="1". Соответственно клетки 1, 3, 4, 6, 7, 9 делаются шириной в один пиксел (width="1" ). Средние клетки 2, 5, 8 делаются максимально широкими (width="100%" ). Фокус заключается в том, что в клетки, которые должны быть узкими или тонкими, или теми и другими, добавляется так называемый "модифицированный квадрат Малевича" - прозрачный gif-файл размером 1х1, иначе желаемый эффект достигнут не будет.

Для создания тонкой рамки вокруг таблицы с одной ячейкрй этот вариант является, несомненно, слишком сложным и обьёмным, несмотря на его совместимость со многими браузерами. Он применяется, в основном, для разметки страницы тонкими линиями. Для создания рамок можно также использовать таблицы стилей, но об этом в одном из следующих workshop"ов.

Следующий workshop

>> готовится к публикации

Предыдущий workshop

Хотя линии между ячейками позволяют четко отделить одни данные от других, ту же самую функцию выполняет и пустое пространство вокруг текста. А чтобы таблица выделялась на веб-страницы, для нее устанавливают определенный цвет фона. Заголовок при этом допустимо задать другого цвета, как показано на рис. 1.

Для изменения цвета фона таблицы используем свойство background , добавляя его к селектору TABLE . Для красоты внизу таблицы рисуем линию с помощью свойства border-bottom (пример 1).

Пример 1. Создание таблицы без рамки

Таблица

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

Поскольку содержимое тега исходно выравнивается по центру, то для изменения этой характеристики в данном примере применяется стилевое свойство text-align со значением left . Можно поступить наоборот и задать выравнивание по центру для ячеек . Но содержимое первой колонки с названиями камней лучше оставить выровненным по левому краю. Чтобы установить для разных колонок различное выравнивание содержимого рассмотрим два способа.

Первый метод заключается в использовании тега , он добавляется в контейнер

и устанавливает, в частности, выравнивание для отдельных колонок (пример 2).

Пример 2. Выравнивание с помощью тега

Таблица

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

Атрибут align тега указывает, по какой стороне выравнивать ячейки колонки, а span определяет число колонок, к которым будут применяться заданные параметры. Если этот атрибут отсутствует, то тег работает только для одной колонки.

Выравнивание содержимого колонок с помощью тега работает в браузере Internet Explorer и не действует в браузере Firefox и некоторых других.

Второй метод универсальный, работает во всех браузерах и основан на добавлении отдельного класса для определенных ячеек.

Создаем стилевой класс, например, с именем jewel и применяем его к ячейкам левой колонки (пример 3).

Пример 3. Выравнивание с помощью стилей

Таблица

200420052006
Рубины435179
Изумруды283448
Сапфиры295736

В данном примере изменяется цвет фона и способ выравнивания для всех ячеек, где установлен атрибут class="jewel" . Результат примера показан на рис. 2.



Загрузка...