Как задать цвет таблицы в html. Рамки и границы
CSS-рамка элемента представляет собой одну или несколько линий, окружающих содержимое элемента и его отступы padding . Рамка задаётся с помощью краткого свойства border . Стиль рамки задается с помощью трех свойств: стиль , цвет и ширина .
Оформление рамок и границ HTML-элементов с помощью CSS-свойств
1. Стиль рамки border-style
По умолчанию рамки всегда отрисовываются поверх фона элемента, фон распространяется до внешнего края элемента. Стиль рамки определяет ее отображение, без этого свойства рамки не будут видны вообще. Для элемента можно задавать рамку для всех сторон одновременно с помощью свойства border-style или для каждой стороны отдельно с помощью уточняющих свойств border-top-style и т.д. Не наследуется.
border-style (border-top-style, border-right-style, border-bottom-style, border-left-style) |
|
---|---|
Значения: | |
none | Значение по умолчанию, означает отсутствие рамки. Также убирает рамку элемента из группы элементов с установленным значением данного свойства. |
hidden | Эквивалентно none . |
dotted |
dotted |
dashed |
dashed |
solid |
solid |
double |
double |
groove |
groove |
ridge |
ridge |
inset |
inset |
outset |
outset |
{1,4} |
Одновременное перечисление четырех разных стилей для рамок элемента, только для свойства border-style:
|
initial | |
inherit |
Синтаксис
P {border-style: solid;} p {border-top-style: solid;}
2. Цвет рамки border-color
Свойство задаёт цвет рамок всех сторон одновременно. С помощью уточняющих свойств можно установить свой цвет для рамки каждой стороны элемента. Если для рамки цвет не задан, то он будет таким же, как и цвет текста элемента. Если в элементе нет текста, то цвет рамки будет таким же, как и цвет текста родительского элемента. Не наследуется.
border-color (border-top-color, border-right-color, border-bottom-color, border-left-color) |
|
---|---|
Значения: | |
transparent | Устанавливает прозрачный цвет для рамки. При этом ширина рамки остается. Можно использовать для смены цвета рамки при наведении курсора мыши на элемент, чтобы избежать смещение элемента. |
цвет | Цвет рамок задается при помощи значений свойства .
{border-color: #cacd58;} |
{1,4} |
Одновременное перечисление четырех разных цветов для рамок элемента, только для свойства border-color:
|
initial | Устанавливает значение свойства в значение по умолчанию. |
inherit | Наследует значение свойства от родительского элемента. |
Синтаксис
P {border-color: #cacd58;}
3. Ширина рамки border-width
Ширина рамки задается с помощью единиц измерения длины или ключевых слов. Если для свойства border-style задано значение none , и для рамки элемента установлена какая-то ширина, то в данном случае ширина рамки приравнивается к нулю. Не наследуется.
Синтаксис
P {border-width: 2px;}
4. Задание рамки одним свойством
Свойство border позволяет объединить в себе следующие свойства: border-width , border-style , border-color , например:
Div { width: 100px; height: 100px; border: 2px solid grey; }
При этом заданные свойства будут применяться ко всем границам элемента одновременно. Если какое-то из значений не указано, его место займет значение по умолчанию.
5. Задание рамки для одной границы элемента
В случае, когда необходимо задать разный стиль границ элемента, можно воспользоваться краткой записью для соответствующей границы.
Перечисленные ниже свойства объединяют в одно объявление следующие свойства: border-width , border-style и border-color . Перечень свойств указывается в заданном порядке, при этом одно или два значения могут быть пропущены, в этом случае их значения примут значения по умолчанию.
Стиль верхней границы задается с помощью свойства border-top , нижней — border-bottom , левой — border-left , правой — border-right .
Синтаксис
P {border-top: 2px solid grey;}
6. Внешний контур outline
Свойство задаёт внешнюю границу вокруг элементов (т.е. за пределами обычной границы). Основная цель данного свойства — выделить какой-либо элемент. В отличие от свойства border , применение данного свойства не влияет на размер или местоположение элемента, т.к. контур отображается поверх блока элемента, что в свою очередь, может привести к перекрыванию внешних отступов элемента и соседних областей.
Также, внешний контур, в отличие от рамки элемента, окружает элемент со всех сторон, обрамляя его целиком.
Внешний контур всегда имеет прямоугольную форму, он не повторяет границы блока, для которого задан border-radius .
Свойство outline позволяет объединить в себе следующие свойства: outline-color , outline-style , outline-width . Если какое-то из значений не указано, его место займет значение по умолчанию.
Div { width: 100px; height: 100px; outline: #cacd58 solid 2px; }
6.1. Стиль внешнего контура outline-style
Вид линии внешнего контура задаётся аналогично со стилем рамки элемента. Не наследуется.
Синтаксис
P {outline-style: ridge;}
6.2. Цвет внешнего контура outline-color
Цвет внешнего контура можно прописывать только при установленном значении outline-style . Не наследуется.
Синтаксис
P { outline-style: ridge; outline-color: silver; }
6.3. Толщина внешнего контура outline-width
Толщина линии внешнего контура задается аналогично с толщиной рамки элемента. Не наследуется.
Синтаксис
P { outline-style: dotted; outline-width: 5px; }
Рамка вокруг таблицы позволяет акцентировать на ней внимание, отделить от остального содержимого веб-страницы и расширить набор средств по дизайну таблиц.
Для создания рамки применяется стилевое свойство border , которое добавляется к селектору TABLE . Также эффектно смотрится таблица, когда цвет рамки совпадает с цветом фона заголовка (тег
В примере 1 показано, как создать такую простую таблицу.
Пример 1. Создание рамки вокруг таблицы
2004 | 2005 | 2006 | |
---|---|---|---|
Рубины | 43 | 51 | 79 |
Изумруды | 28 | 34 | 48 |
Сапфиры | 29 | 57 | 36 |
В данном примере выравнивание текста во всех ячейках происходит по левому краю, что не всегда удобно. На рис. 2 показана таблица, у которой содержимое ячеек выравнивается по центру за исключением левой колонки, где текст выравнивается по левому краю.
Изменение выравнивания происходит с помощью стилевого свойства text-align , при этом для отдельных ячеек требуется вводить новый класс, чтобы гибко управлять некоторыми характеристиками (пример 2).
Пример 2. Таблица с выравниванием содержимого ячеек
2004 | 2005 | 2006 | |
---|---|---|---|
Рубины | 43 | 51 | 79 |
Изумруды | 28 | 34 | 48 |
Сапфиры | 29 | 57 | 36 |
В данном примере добавляется стилевой класс с именем lc , он добавляется к ячейкам левой колонки для изменения выравнивания содержимого и создания жирного начертания текста.
Эффектно смотрится таблица, у которой фон заголовка выполнен в виде градиента (рис. 3). При этом создание подобной таблицы не представляет особой сложности.
При этом в качестве фона применяется заранее заготовленный рисунок, например, как показано на рис. 4.
Для добавления фона только к одной строке таблицы имеется несколько способов.
Можно воспользоваться тегом
, который
предназначен для хранения одной или нескольких строк, которые представлены вверху
таблицы. Для этого тега добавляем стилевое свойство background
,
оно одновременно определяет цвет фона и фоновый рисунок, а также его повторяемость
(пример 3).
Пример 3. Использование фонового рисунка
В данном примере тег
охватывает только
верхнюю строку таблицы с ее заголовком. Для этого тега в стилях одновременно
устанавливается цвет фона и картинка, которая приведена на рис. 4. Хотя
цвет под рисунком не виден, лучше его всегда добавлять, например, для случая
отключения пользователем отображения изображений в браузере.
21.01.06
5.9K
Любому веб-мастеру, ввиду своей профессиональной деятельности, приходится создавать те или иные сложные элементы на сайте Цветная граница рамки таблицы. Атрибут "border" должен быть равен "0". cellspacing приравняем к "2" (чем больше число, тем шире получится рамка таблицы). С помощью этого тега указывается, откуда следует располагать информацию. В данном примере нам понадобится расположить информацию, начиная с верхнего края таблицы. Вставляем в ячейку нашей таблицы другую таблицу. Указываем цвет фона таблицы. В данном случае, нам понадобится белый фон. Вот и всё. Наша таблица готова. Теперь мы имеем таблицу, рамка которой будет отображаться во всех браузерах одинаково. Напоследок, приведу весь код, который мы создали. Не кажется ли вам, что черно-белая таблица выглядит скучновато? Вот и мы так думаем! Поэтому в этом уроке мы поговорим о том, как изменить цвет таблицы в HTML. Существует три возможности добавления цвета, для каждой из которых присутствует свое свойство. Ранее, чтобы изменить цвет, применялась более сжатая форма описания рамки. Выглядела она вот так: Border: 1px solid lightgray
И за цвет здесь отвечала последняя часть – lightrgay
. Существуют различные способы, позволяющие задать значение цветов в CSS
. Мы же покажем вам, как происходит описание цвета с использованием атрибутов. Давайте посмотрим, как выглядит код в CSS
, в котором задан цвет для ячейки. Td {
background-color: цвет-фона;
}
Разумеется, изменять цвета можно и у table
, и у td
, и у th
. Давайте попробуем придать нашей таблице умножения более солидный вид. Добавим стили для ячеек-заголовков с тегом th
, а также для ячеек по диагонали, в которых расположены квадраты чисел:
Результат в браузере: Как вы уже заметили в примере выше, в таблице мы изменили цвет рамки. Для этого мы использовали свойство border. В нём задаются параметры в порядке, перечисленном ниже: Напомним ещё раз, как выглядит задание цвета рамки для ячейки: Td {
border: 1px solid blue;
}
Итак, мы с вами научились менять цвета ячеек, а также ячеек-заголовков, используя возможности CSS. Если мы указываем стили для таких тегов, как th
или td
, то должны понимать, что применимы стили будут и к остальным тегам. Однако, бывают ситуации, когда надо изменить цвет конкретной ячейки или же несколько ячеек, или же всю строку целиком. Что делать в данном случае? Здесь следует использовать классы, а также осуществлять применение их стилей. На практике это выглядит вот так: RowGreen {
background-color:green;
}
А чтобы изменить цвет с помощью этого класса определённые строки нужно сделать следующее:
И результат в браузере: Для того, чтобы изменить цвет текста в таблице используется свойство color
. Применять его можно к самым разным элементам: к table, tr, th, td. В зависимости от этого цвет в выбранном элементе будет изменён. Например, для всей таблицы зададим зелёный цвет шрифта: Table {
color: green;
...
}
Аналогично можно изменять цвет для отдельных ячеек. А на этом данный урок заканчивается, не забудьте сделать домашнее задание. Всем пока! Сами по себе таблицы выглядят довольно «бедно», к тому же браузеры по-своему отображают некоторые характеристики таблиц, в частности, рамки. Вместе с тем эти недостатки легко исправить воспользовавшись мощью стилей. При этом весьма расширяются средства по оформлению таблиц, что позволяет удачно вписать таблицы в дизайн сайта и нагляднее представить табличные данные. Цвет фона одновременно всех ячеек таблицы устанавливается через свойство background
, которое применяется к селектору TABLE
. При этом следует помнить о правилах использования стилей, в частности, наследовании свойств элементов. Хотя свойство background
не наследуется, для ячеек значением фона по умолчанию выступает transparent
, т.е. прозрачность, поэтому эффект заливки фона получается и у ячеек. Если одновременно с TABLE
задать цвет у селектора TD
или TH
, то этот цвет будет установлен в качестве фона ячейки (пример 2.3). Пример 2.3. Цвет фона
В данном примере получим синий цвет фона у ячеек (тег Результат данного примера показан на рис. 2.4. Рис. 2.4. Изменение цвета фона Полем называется расстояние между краем содержимого ячейки и её границей. Обычно
для этой цели применяется атрибут cellpadding
тега Пример 2.4. Поля в таблицах XHTML 1.0
CSS 2.1
IE
Cr
Op
Sa
Fx
В данном примере с помощью группирования селекторов поля установлены одновременно
для селектора TD
и TH
. Результат примера показан на рис. 2.5. Рис. 2.5. Поля в ячейках Если применяется стилевое свойство padding
для ячеек таблицы,
то действие атрибута cellpadding
тега Для изменения расстояния между ячейками применяется атрибут cellspacing
тега Свойство border-spacing
действует только в том случае, если для селектора TABLE
не задано свойство border-collapse
со значением collapse
(пример 2.5). Пример 2.5. Расстояние между границами ячеек XHTML 1.0
CSS 2.1
IE 7
IE 8+
Cr
Op
Sa
Fx
Результат данного примера показан на рис. 2.6. Рис. 2.6. Вид таблицы при использовании border-spacing Браузер Internet Explorer до седьмой версии включительно не поддерживает свойство border-spacing
, поэтому в этом браузере для таблиц будет применяться значение cellspacing
заданное по умолчанию (обычно оно равно 2px). При добавлении к селектору TABLE
свойства border-collapse
со значением collapse
, атрибут cellspacing
игнорируется, а значение border-spacing
обнуляется. По умолчанию границы в таблице изначально нет, а её добавление происходит с помощью атрибута border
тега Известно, что атрибут cellspacing
тега Заметим, что это не совсем удобный способ создания границ, поскольку он имеет
ограниченную область применения. Так можно получить только одноцветную сетку,
а не вертикальные или горизонтальные линии в нужных местах. Стилевое свойство border
одновременно устанавливает цвет
границы, её стиль и толщину вокруг элемента. Когда требуется создать отдельные
линии на разных сторонах, лучше использовать производные —
border-left
, border-right
,
border-top
и border-bottom
,
эти свойства соответственно определяют границу слева, справа, сверху и снизу. Применяя свойство border
к селектору TABLE
,
мы добавляем рамку вокруг таблицы в целом, а к селектору TD
или TH
— рамку вокруг ячеек (пример 2.6). Пример 2.6. Добавление двойной рамки XHTML 1.0
CSS 2.1
IE
Cr
Op
Sa
Fx
В данном примере используется двойная рамка черного цвета вокруг самой таблицы
и сплошная рамка белого цвета вокруг каждой ячейки. Результат примера показан на рис. 2.7. Рис. 2.7. Граница вокруг таблицы и ячеек Обратите внимание, что в месте состыковки ячеек образуются двойные линии. Они
получаются опять же за счет действия атрибута cellspacing
тега Пример 2.7. Создание одинарной рамки XHTML 1.0
CSS 2.1
IE
Cr
Op
Sa
Fx
В данном примере создается сплошная линия зеленого цвета между ячейками и черная
вокруг таблицы. Все границы внутри таблицы имеют одинаковую толщину. Результат примера показан на рис. 2.8. Рис. 2.8. Граница вокруг таблицы По умолчанию текст в ячейке таблицы выравнивается по левому краю. Исключением
из этого правила служит тег Пример 2.8. Выравнивание содержимого ячеек по горизонтали XHTML 1.0
CSS 2.1
IE
Cr
Op
Sa
Fx
В данном примере содержимое тега Рис. 2.9. Выравнивание текста в ячейках Выравнивание по вертикали в ячейке всегда происходит по её центру, если это
не оговорено особо. Это не всегда удобно, особенно для таблиц, у которых содержимое
ячеек различается по высоте. В таком случае выравнивание устанавливают по верхнему
краю ячейки с помощью свойства vertical-align
,
как показано в примере 2.9. Пример 2.9. Выравнивание содержимого ячеек по вертикали XHTML 1.0
CSS 2.1
IE
Cr
Op
Sa
Fx
В данном примере устанавливается высота заголовка Рис. 2.10. Выравнивание текста в ячейках Браузеры иначе отображают ячейку, внутри которой ничего нет. «Ничего» в данном случае означает, что внутрь ячейки не добавили ни рисунок, ни текст, причём пробел в расчёт не принимается. Естественно, вид ячеек различается только в том случае, если вокруг них установлена граница. При использовании невидимой рамки, вид ячеек, независимо от того, есть в них что-нибудь или нет, совпадает. Старые браузеры не отображали цвет фона пустых ячеек вида К счастью эпоха однопиксельных рисунков и всяческих распорок на их основе прошла. Браузеры достаточно корректно работают с таблицами и без присутствия содержимого ячеек. Для управления видом пустых ячеек используется свойство empty-cells
, при значении hide
граница и фон в пустых ячейках не отображается. Если все ячейки в строке пустые, то строка прячется целиком. Ячейка считается пустой в следующих случаях: Добавление неразрывного пробела воспринимается как видимое содержание, т.е. ячейка уже будет не пустой (пример 2.10). Пример 2.10. Пустые ячейки XHTML 1.0
CSS 2.1
IE
Cr
Op
Sa
Fx
Вид таблицы в браузере Safari показан на рис. 2.11а. Та же таблица в браузере IE7 продемонстрирована на рис. 2.11б. а. В браузере Safari, Firefox, Opera, IE8, IE9 б. В браузере IE7 Рис. 2.11. Вид таблицы с пустыми ячейками
2004 2005 2006
Рубины 43 51 79
Изумруды 28 34 48
Сапфиры 29 57 36
(Например: оптекание текстом графики, создание колонок с текстом, фиксация элементов сайта).
Однако, стандарт html имеет небольшое количество стандартных элементов оформления страницы, и не все элементы одинаково отображаются в разных браузерах. Каждая компания пытается разработать свой собственный html, порой уходя далеко от основной концепции html, разработанной консорциумом WWW.
Поэтому веб-мастеру приходится эксперементировать с элементами, которые являются общими для всех браузеров.
Наиболее удачно подходят таблицы т.к в ячейках таблицы удобно размещать информацию.
Кроме того, таблицы в html имеют атрибут "border="0" — этот атрибут со значением "0" скрывает границы таблицы т.е остаётся видно содержимое ячейки а сама рамка не видна.
Давайте теперь рассмотрим пример разработки табличного дизайна.
Сразу отмечу, что в html, по умолчанию, встроен атрибут, который отвечает за цвет рамки таблицы. (bordercolor). Однако, нам он не подойдёт, потому что данный атрибут поддерживается только браузером Internet Explorer. В других браузерах этот элемент не работает. Но нам необходимо, чтобы страница одинаково отображалась в любом браузере. К нам на помощь приходят таблицы. Давайте сначала создадим обычную таблицу.
Атрибут "cellspacing" служит для того, чтобы указать расстояние между двумя ячейками. В данном случае, он будет указывать расстояние между двумя таблицами.
Зальём таблицу черным цветом, используя атрибут "bgcolor" Вообще вы можете выбрать любой другой цвет, в зависимости от того, какого цвета будет ваша рамка.
Как изменить цвет ячейки
*
2
3
2
4
6
3
6
9
Как изменить цвет рамки в таблице
Как изменить цвет строки в таблице
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
Как изменить цвет текста в таблице
Цвет фона ячеек
Заголовок 1 Заголовок 2 Ячейка 3 Ячейка 4
)
и красный у заголовка (тег
). Это связано
с тем, что стиль для селектора TH
не определен, поэтому «просвечивается» фон родителя, в данном случае, селектора TABLE
.
А цвет для селектора TD
указан явно, вот ячейки и «заливаются»
синим цветом.
Поля внутри ячеек
. Он определяет значение поля в пикселах
со всех сторон ячейки. Допускается использовать стилевое свойство padding
,
добавляя его к селектору TD
, как показано в примере 2.4.
Заголовок 1 Заголовок 2 Ячейка 3 Ячейка 4
игнорируется.
Расстояние между ячейками
. Влияние этого атрибута хорошо заметно при использовании границ вокруг ячеек или при заливке ячеек цветом, который выделяется на фоне страницы. В качестве замены cellspacing
выступает стилевое свойство border-spacing
, оно устанавливает расстояние между границами ячеек. Одно значение устанавливает одновременно расстояние по вертикали и горизонтали между границами ячеек. Если значений у этого свойства два, то первое определяет горизонтальное расстояние (т.е. слева и справа от ячейки), а второе - вертикальное (сверху и снизу).
Леонардо 5 8 Рафаэль 4 11 Микеланджело 24 9 Донателло 2 13 Границы и рамки
. Браузеры по-разному отображают такую границу, поэтому лучше не указывать этот атрибут вообще, а рисование границ возложить на стили. Рассмотрим два метода, непосредственно связанных со стилями.
Использование атрибута cellspacing
задаёт расстояние между ячейками таблицы. Если используется разный цвет фона
таблицы и ячеек, то между ячейками возникнет сетка линий, цвет которых совпадает
с цветом таблицы, а толщина равна значению атрибута cellspacing
в пикселах. В вышеприведенном выше примере 2.3 этот эффект показан, поэтому повторять
его не буду.
Применение свойства border
Заголовок 1 Заголовок 2 Ячейка 3 Ячейка 4
. Хотя в коде примера этот атрибут
нигде не фигурирует, браузер использует его по умолчанию. Если задать
,
то получим не двойные, а одинарные линии, но удвоенной толщины. Для изменения
указанной особенности применяется стилевое свойство border-collapse
со значением collapse
, которое добавляется к селектору
TABLE
(пример 2.7).
Заголовок 1 Заголовок 2 Ячейка 3 Ячейка 4 Выравнивание содержимого ячеек
, он определяет
заголовок, в котором выравнивание происходит по центру. Чтобы изменить способ
выравнивания применяется стилевое свойство text-align
(пример 2.8).
Заголовок 1 Ячейка 1 Ячейка 2 Заголовок 2 Ячейка 3 Ячейка 4
выравнивается
по левому краю, а содержимое тега
—
по центру. Результат примера показан ниже (рис. 2.9).
Заголовок 1 Заголовок 2 Ячейка 1 Ячейка 2
как 40 пикселов и выравнивание текста происходит по нижнему краю. Результат
примера показан на рис. 2.10.
Пустые ячейки
, поэтому в том случае, когда требовалось оставить ячейку без содержимого, но отобразить цвет фона, внутрь ячейки добавляли неразделяемый пробел (). Пробел не всегда подходит, особенно когда нужно установить высоту ячейки 1–2 пиксела, из-за чего широкое распространение получил однопиксельный прозрачный рисунок. Действительно, такой рисунок можно масштабировать на свое усмотрение, но он на веб-странице никак не отображается.
Леонардо 5 8
Рафаэль 11
Микеланджело 24
Донателло 13