Энциклопедия мобильной связи

Html верхняя граница таблицы. Отступы между ячейками

Всем привет! Итак, теперь вы умеете создавать элементарные таблицы, состоящие из такого количества строк и столбцов, которое необходимо. Неплохо, неплохо. А теперь давайте поговорим про оформление этих таблиц.

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

атрибут border , придав ему значение отличное от нуля.

Итак, давайте сделаем границы для таблицы. Например, для уже имеющейся у нас:

Верхняя левая ячейкаВерхняя правая ячейка
Нижняя левая ячейкаНижняя правая ячейка

Результат в браузере:

Как убрать границы таблицы

В свою очередь, чтобы убрать границы таблицы HTML, или ещё можно сказать, сделать их невидимыми, нужно атрибуту border задать значение 0 . После этих нехитрых действий рамка уберётся.

Атрибут позволяет создать, но не управлять границами. Он позволяет лишь изменять их толщину.

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

Давайте посмотрим как применять CSS для создания внешних и внутренних границ таблицы.
Для этого удалим у нашей таблицы атрибут border и добавим стили:

Пример таблицы

Верхняя левая ячейка Верхняя правая ячейка
Нижняя левая ячейка Нижняя правая ячейка

Результат в браузере:

Теперь давайте добавим границы и для каждой ячейки. Для этого просто дополним стили:

Результат в браузере:

Как убрать отступы между ячейками в таблице HTML

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

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

Table { border: solid 1px blue; border-collapse: collapse; } ...

Как результат - убирается расстояние между ячейками:

Значение collapse, приписанное атрибуту border, позволяет убрать двойные рамки. Как можно увидеть, результатом является "схлопывание" границ ячеек, расположенных рядом, а также рамок ячеек и внешней рамки таблицы. Что касается последней, то она может удалиться и вовсе. И если есть необходимость в ее отображении, необходимо увеличивать ее ширину. Таким образом мы избавились от разделителей в таблице. А в следующем уроке мы поговорим о том, как можно задавать вертикальные и горизонтальные границы. Всем удачи!

информирует браузер о завершении таблицы.

Любая таблица состоит из столбцов и строк.

Тег создает строку, а тег ячейку в строке. Соответственно сколько ячеек включено в строку, столько будет и столбцов в таблице.

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

Содержимое ячейки, созданной тегом по умолчанию располагается в ее левой чаcти.

Тег создает заголовок таблицы, он располагается внутри тега

- сразу после открывающего тега. Заголовок по умолчанию располагается над таблицей и выравнивается по ее центру.















Заголовок таблицы
1-я ячейка 1-ой строки 2-я ячейка 1-ой строки
1-я ячейка 2-ой строки 2-я ячейка 2-ой строки

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

Для выравнивания таблицы используется атрибут align тега

.

При помощи атрибут align Вы можете разместить таблицу в левой или правой (align= "left" и align= "right" ) части окна браузера (родительского элемента ) или по его центру (align= "center" ).

Выравнивание содержимого строк (тег

) и ячеек (тег , создающий строку таблицы не имеет атрибутов hieght и width . Высота строки соответствует высоте ячеек, расположенных в ней. А ширина строки равна ширине таблицы.

Значения высоты и ширины задаются в пикселях или в процентах относительно свободного пространства. Для задания значений:

Указывается целое положительное число. В этом случае размер будет задан в пикселях;

Указывается целое положительное число с символом %.

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

) по горизонтали также осуществляется при помощи атрибута align , а по вертикали при помощи атрибута valign :

Атрибут align принимает значения left , right , center и justify , которые задают выравнивание содержимого строк и ячеек по их левому, правому краю, по центру и по ширине соответственно;

Атрибут valign , принимающий значения top , bottom и middle , задает выравнивание содержимого строк и ячеек по их верхнему, нижнему краю и по середине соответственно.

Атрибут align служит также для выравнивания заголовка (тег

) по горизонтали и определения его расположения - над таблицей или под ней.

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

Высота и ширина таблицы и ячеек

По умолчанию размеры (высота и ширина ) и таблицы, и ячеек меняются в зависимости от размеров их содержимого.

Но высоту и ширину как таблицы, так и отдельных ее ячеек можно задать явно - при помощи атрибутов hieght и width соответственно.

Тег














>

Как видно из примера: указывая ширину одной из ячеек столбца, Вы тем самым задаете ширину всего столбца; и, указывая высоту одной из ячеек строки, Вы задаете высоту всей строки.

Границы таблицы и ячеек

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

Атрибут border тега

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

Толщина границы (или рамки ) задается в пикселях. В качестве значения атрибута border указывается целое положительное число. Если атрибут border указан без значения, толщина рамки составит 1 пиксель.

Толщина границы задается только для таблицы. Толщина рамки вокруг ячеек всегда составляет 1 пиксель (либо отсутствует ).

По умолчанию граница отображается с эффектом трехмерности и имеет черный цвет.

Атрибут bordercolor задает цвет границы и устраняет эффект трехмерности. Атрибут может использоваться для задания цвета границы таблицы (тег

), строки (тег ) или ячейки (тег создает новую строку. Далее во вложенных
).

Атрибут bordercolor поддерживается не всеми браузерами и поэтому не рекомендуется его использовать. Для задания цвета границы лучше воспользоваться стилями (это уже в CSS ).










Атрибут border не указан. Поэтому границы отсутствуют.











Толщина границы таблицы составляет 3 пикселя. Ячейки имеют границы толщиной 1 пиксель!

Частичное отображение границ

Граница таблицы и рамка вокруг ячеек могут быть отображены частично.

Атрибут frame тега

указывает, где рисовать границу таблицы. Атрибут rules указывает, как отобразить границы ячеек.

"500px" frame= "hsides" rules= "cols" >










Установлены горизонтальные границы таблицы
И отображены границы между колонками

Отступы внутри и снаружи ячеек

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

Внутренние отступы - от границ ячеек до их содержимого, задаются атрибутом cellpadding тега

.

Внешние отступы - расстояние между границами соседних ячеек и расстояние от границ ячеек до границы таблицы, задаются атрибутом cellspacing тега

.

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










Расстояние от содержимого ячеек до их границ составляет 10 пикселей
Расстояние между ячейками и от ячеек до границы таблицы составляет 25 пикселей

Объединение ячеек

При оформлении и форматировании таблиц в HTML нередко требуется объединить рядом расположенные ячейки. И если такая необходимость возникла, то Вам следует воспользоваться атрибутами colspan и rowspan тега

.

Атрибут colspan указывает количество ячеек, которые будут объединены по горизонтали, а атрибут rowspan устанавливает количество ячеек, объединяемых по вертикали.

Оба атрибута имеют смысл, если таблица состоит из нескольких строк.










1 2
3 4

1 2
3 4

Фон таблицы. Фон ячеек таблицы

В HTML есть возможность задать общий фон как для всей таблицы, так и фон для отдельно выделенной ячейки.

Атрибут background тега

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

Атрибут bgcolor тега

задает цвет фона таблицы. Цвет можно задать двумя способами ()

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

, и .

Любой из них можно применить для изменения некоторых свойств одной или нескольких строк таблицы: это опять же выравнивание содержимого ячеек в строках по горизонтали и по вертикали - при помощи атрибутов align и valign соответственно; и задание фонового цвета ячеек при помощи атрибута bgcolor .

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

Теги

и должны быть расположены перед тегом , сразу после открывающего таблицу тега
).










Темно-розовый - цвет фона таблицы.
Фоновый рисунок отдельной ячейки - небо!

Напомним также о существовании атрибута cols тега

, который указывает браузеру количество столбцов в таблице.

Использование атрибута cols позволяет браузеру быстрее отобразить содержимое таблицы.

Редактирование таблицы

В этом разделе, рассмотрим теги, которые применяют при редактировании сразу нескольких элементов таблицы. Эти теги можно разделить на две группы.

К первой группе относятся теги

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

Один из этих тегов располагают сразу после тега

. Допустим это тег .

При помощи атрибута span тега

указывают количество колонок, к которым будут применены атрибуты align , valign или width (выравнивание содержимого ячеек колонок по горизонтали, вертикали или задание ширины колонок ).

Если атрибут span в теге

отсутствует, то будут изменены характеристики одной - первой колонки таблицы. При втором использовании тега задаются свойства для следующих (следующей - если атрибут span отсутствует ) колонок таблицы и т.д.



"2" width= "70px" >







1 2 3 4 5

1 2 3 4 5

Ко второй группе тегов относятся также практически идентичные между собой теги

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

Тег

допускается использовать несколько раз внутри тега
.









"right" bgcolor= "#00FF33" >

1 2
3 4
5 6
7 8
9 10
1 2
3 4
5 6
7 8
9 10

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

Элементы могут быть вложенными, могут находиться по соседству друг от друга. Давайте рассмотрим следующий пример:

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

Поля задаются стилем padding . Этот стиль применим только к элементам-контейнерам, которые могут содержать в себе другие элементы. Стиль позволяет задать значение полей между краями элемента и его содержимым. Стиль margin позволяет задать отступы от элемента до ближайших границ другого элемента. Границами другого элемента могут быть границы родительского контейнера, а также края самой страницы.

Существует несколько способов задания этих стилей. Например, непосредственно указать размер всех полей или отступов одним аргументом в какой-нибудь единице измерения (px, ex, em, pt, cm и так далее):

padding : 3px ; margin : 3px ;

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

padding : 3px 5px ; margin : 3px 5px ;

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

padding : 3px 5px 2px ; margin : 3px 5px 2px ;

первый - поле/отступ сверху, второй - одновременно слева и справа, третий - снизу. При четырех аргументах:

padding : 3px 5px 2px 6px ; margin : 3px 5px 2px 6px ;

первый - поле/отступ сверху, второй - справа, третий - снизу, четвертый - слева. Легко запомнить: первый - сверху, далее по часовой стрелке. Кроме того, можно задавать поля и отступы для конкретного края отдельно, с помощью соответствующих стилей: padding-top , padding-right , padding-bottom , padding-left , margin-top , margin-right , margin-bottom , margin-left . Значением этих стилей может быть только один аргумент, задающий величину поля/отступа для данной стороны.

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

padding : 5px ;

В результате страница изменит вид к следующему:

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

margin-top : 5px ;

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

Кстати, в первом случае (зазор между красным блоком и границами родительской ячейки) того же самого эффекта можно было добиться с помощью задания отступов блока. В общем, если что-то непонятно, отписываемся в комментариях.

HTML-код подопытной страницы:

<html > <head > <title > Тест</ title > <meta http-equiv = "Content-Type" content = "text/html;charset=utf-8" > </ head > <body > <style > table {width: 200px; height: 150px; border: 1px solid #555; border-collapse: collapse} td {vertical-align: top; padding: 0px} div {width: 100px; height: 100px; background: red} </ style > <table style = "background: lime" > <tr > <td style = "padding: 5px" > <div style = "margin: 0px" > </ div > </ td > </ tr > </ table > <table style = "background: skyblue; margin-top: 5px" > <tr > <td > </ td > </ tr > </ table > </ body > </ html > находится тело таблицы. Тело состоит из строк и столбцов. Таблица заполняется построчно.

Каждый тег

создаются столбцы. Можно создавать множество столбцов. При этом нужно следить за количеством столбцов в каждой строке. Например, если в первой строке было 5 столбцов, то и в следующих строках должно быть 5 столбцов. Иначе таблица поплывет. Есть возможность объединять ячейки.

Как сделать таблицу в html

Приведем пример, html код:

Пример таблицы
Столбец 1 Столбец 2

Обратите внимание на ячейку

. Мы используем специальный атрибут colspan для объединения ячеек по горизонтали. Его численное значение указывает число объединяемых столбцов. Также существует аналог этого атрибута: тег (заголовок таблицы), где нужно также прописать colspan. Результат будет таким же. Но зачастую используют обычный td.

Теперь рассмотрим подробно все атрибуты тега

.

Атрибуты и свойства тега

К открывающему тегу

можно прописывать различные атрибуты.

1. Свойство align="параметр" - задает выравнивание таблицы. Может принимать следующие значения:

В разобранном выше примере мы выравнивали таблицу по центру align="center" .

Этот атрибут можно применять не только к таблице, но и к отдельным ячейкам таблицы

. Таким образом, в разных ячейках выравнивание будет разное.

Например

, , , или
  • cols - линия отображается между колонками
  • none - все границы скрываются
  • rows - граница рисуется между строками таблицы, созданными через тег
  • 12. Свойство width="число" - задает ширину таблицы: либо в пикселях, либо в процентах.

    13. Свойство class="имя_класса" - можно указать имя класса, которому принадлежит таблица.

    14. Свойство style="стили" - стили можно задать индивидуально для каждой таблицы.

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

    и доступны такие же параметры, что и для будут иерархично применены ко всем
    или строкам
    ... ... ...

    2. Свойство background="URL" - задает фоновой рисунок. Вместо URL должен быть написан адрес фонового изображения.

    Пример

    Пример таблицы
    Столбец 1 Столбец 2

    Преобразуется на странице в следующее:

    В рассмотренном примере наше фоновое изображение находится в папке img (которая находится в той же директории, что и html-страница), а называется изображение fon.gif . Обратите внимание на то, что в теге мы добавили style="color:white;" . Поскольку фон почти черный, то для того, чтобы текст не слился с фоном, мы сделали текст белым.

    3. Свойство bgcolor="цвет" - задает цвет фона таблицы. В качестве цвета можно выбрать любой из всей палитры (см. коды и названия html цветов)

    4. Свойство border="число" - задает толщину рамки таблицы. В предыдущих примерах мы указывали border="1" , что означает толщина рамки - 1 пиксель.

    5. Свойство bordercolor="цвет" - задает цвет рамки. Если border="0" , то рамки не будет и цвет рамки не будет иметь смысла.

    6. Свойство cellpadding="число" - отступ от рамки до содержимого ячейки в пикселях.

    7. Свойство cellspacing="число" - расстояние между ячейками в пикселях.

    8. Свойство cols="число" - число столбцов. Если его не задать, то браузер сам определит число столбцов. Разница лишь в том, что указание этого параметра, скорее всего, ускорит загрузку таблицы.

    9. Свойство frame="параметр" - как отображать границы вокруг таблицы. Может принимать следующие значения:

    • void - не отрисовывать границы
    • border - граница вокруг таблицы
    • above - граница по верхнему краю таблицы
    • below - граница снизу таблицы
    • hsides - добавить только горизонтальные границы (сверху и снизу таблицы)
    • vsides - рисовать только вертикальные границы (слева и справа от таблицы)
    • rhs - граница только на правой стороне таблицы
    • lhs - граница только на левой стороне таблицы

    10. Свойство height="число" - задает высоту таблицы: либо в пикселях, либо в процентах.

    11. Свойство rules="параметр" - где отображать границы между ячейками. Может принимать следующие значения:

    • all - линия рисуется вокруг каждой ячейки таблицы
    • groups - линия отображается между группами, которые образуются тегами
    .

    Атрибуты и свойства

    1. Свойство align="параметр" - задает выравнивание отдельной ячейки таблицы. Может принимать следующие значения:

    • left - выравнивание по левому краю
    • center - выравнивание по центру
    • right - выравнивание по правому краю

    2. Свойство background="URL" - задает фоновое изображение ячейки. Вместо URL должен быть написан адрес фонового изображения.

    3. Свойство bgcolor="цвет" - задает цвет фона ячейки.

    4. Свойство bordercolor="цвет" - задает цвет рамки ячейки.

    5. Свойство char="буква" - задает букву, от которой нужно сделать выравнивание. Значение атрибута align должно быть установлено как char.

    6. Свойство colspan="число" - задает число объединяемых горизонтальных ячеек.

    7. Свойство height="число" - задает высоту таблицы: либо в пикселях, либо в процентах %.

    8. Свойство width="число" - задает ширину таблицы: либо в пикселях, либо в процентах %.

    9. Свойство rowspan="число" - задает число объединяемых вертикальных ячеек.

    10. Свойство valign="параметр" - выравнивание содержимого ячейки по вертикали.

    • top - выравнивание содержимого ячейки по верхнему краю строки
    • middle - выравнивание по середине
    • bottom - выравнивание по нижнему краю
    • baseline - выравнивание по базовой линии
    Примечание 1

    Для тега

    . Параметры для одного тега
    внутри него

    Как сделать, чтобы границы ячеек в таблице не склеивались

    В случае использования border (граница ячеек) и нулевых отступов между ячейками, они все равно склеиваются и получается удвоенный border . Чтобы это избежать нужно прописать в стилях таблице border-collapse: collapse :

    ...

    Уважаемый читатель, теперь Вы узнали гораздо больше о html теге table. Теперь советую перейти к следующему уроку.

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

    Для того, чтобы сделать отступы в ячейке следует использовать атрибут cellpadding для тега

    . Однако, есть и другой, более предпочтительный вариант: CSS .

    В таком случае отступы задаются с помощью свойства padding . С его помощью не составит труда сделать отступ там, где надо, то есть – сверху, справа, снизу или слева, используя, соответственно, одно из данных свойств: padding-top , padding-right , padding-bottom и padding-left .

    Можно задать, на сколько именно пикселей должен осуществляться отступ. Приведем пример, в котором нижний отступ будет составлять 20 пикселей, а все остальные будут по 10 . Такой CSS -код будет выглядеть вот так:

    Td { padding: 10px; padding-bottom: 20px; }

    А полный код стилей на данном этапе:

    Table { border: solid 1px blue; border-collapse: collapse; } td { border: solid 1px blue; padding: 10px; padding-bottom: 20px; }

    Результат в браузере:

    Отступы между ячейками

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

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

    Существует две возможности сделать отступы между ячейками:

    1. с использованием атрибута cellspacing для тега
    .
  • с использованием CSS -свойства border-spacing .
  • Надо подчеркнуть, что border-spacing прописывается для таблицы в целом, в то время как свойство padding прописывается непосредственно для ячеек.

    Давайте глянем на пример:

    Table { border: solid 1px blue; border-collapse: separate; border-spacing: 5px; } td { border: solid 1px blue; padding: 10px; padding-bottom: 20px; }

    И на получившийся результат:

    Сразу оговорим, что не надо пытаться сделать такие отступы с помощью border-collapse: collapse . Ведь при использовании этой опции ячейки «липнут» друг к другу.

    А чтобы они находились отдельно друг от друга, следует использовать border-collapse: separate . Важно понимать, что данное значение является значением по умолчанию. И применяется оно только для того, чтобы наглядно показать, как решается эта задача. Если мы удалим эту строку, то результат в виде отдельно расположенных друг от друга ячеек будет сохранен.



    Понравилась статья? Поделитесь с друзьями!
    Была ли эта статья полезной?
    Да
    Нет
    Спасибо, за Ваш отзыв!
    Что-то пошло не так и Ваш голос не был учтен.
    Спасибо. Ваше сообщение отправлено
    Нашли в тексте ошибку?
    Выделите её, нажмите Ctrl + Enter и мы всё исправим!