Как изменить границы таблицы css

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

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

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

(заголовок таблицы), где нужно также прописать colspan. Результат будет таким же. Но зачастую используют обычный td.

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

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

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

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 — линия отображается между группами, которые образуются тегами , ,

    , или
  • cols — линия отображается между колонками
  • none — все границы скрываются
  • rows — граница рисуется между строками таблицы, созданными через тег

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

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

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

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

и

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 — выравнивание по базовой линии

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

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

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

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

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

Язык гипертекстовой разметки HTML предоставил нам большое количество возможностей, чтобы осуществить привязку CSS стилей к десяти уникальным тегам, предназначенных для работы с таблицами, предлагаю их повторить перед дальнейшим изучением:

Html таблицы граница: Отображение границ таблицы html-страницы – Учебник CSS 3. Статья «Работа с таблицами в CSS»

Я создаю таблицу в HTML и пытаюсь назначить ячейкам границу. Вот как это выглядит.

alt text

Видите эту странную границу во 2-м ряду, в последней ячейке. Вот в чем моя проблема.

Что я здесь делаю не так?

UPDATE-я проверил css наследуется, и я нашел это…

html html-table border

Поделиться Источник vikmalhotra 08 ноября 2010 в 08:27

4 Ответов

Ваш HTML не является правильным. Либо у вас должно быть равное нет. из TDs в каждой строке или вы можете соответствовать markup с помощью rowspan/colspan.

Поделиться Chinmayee G 08 ноября 2010 в 08:31

для последних 2 строк сделать ячейку с colspan=2..something, как это:

Поделиться Bat_Programmer 08 ноября 2010 в 08:52

хорошо, я проверил его .. и это не работает на firefox.. но chrome и ie позволяют использовать таблицы с разным количеством столбцов в каждой строке… как сказал @chinmayee, это не правильно, потому что таблицы используются только для представления табличных данных.. я бы попросил вас изменить свой html и использовать divs с float, чтобы получить эффект, который вы хотите..

Поделиться pleasedontbelong 08 ноября 2010 в 08:44

Может быть, это поможет:

Поделиться niksy 08 ноября 2010 в 08:49

Неравномерная пунктирная граница в ячейках таблицы

Я применил CSS border-bottom:1px dashed #494949; к нескольким последовательным ячейкам одной строки таблицы HTML, но граница не является однородной. Тире в конце каждой ячейки кажутся немного…

css/html граница таблицы

Я хотел бы варианты для создания таблиц в моем css. Один с границей 5px сплошной черный и один с 0px. В настоящее время в CSS у меня есть #contentcolumn table < border: 5px solid black; width:…

HTML граница таблицы: таблица стилей агента пользователя переопределяет CSS?

Обычная граница таблицы HTML появляется очень странно в Firefox

Я создал таблицу HTML и использовал следующий CSS для стилизации границы, как я хотел: Верхняя строка и столбец должны быть одного цвета, а rest таблицы должен быть stripes альтернативных цветов…

CSS граница ячейки таблицы перекрывающая границу таблицы

Я едва ли эксперт в css, так что это немного расстраивает. У меня есть сетка, которая была заполнена ретранслятором. Я хочу, чтобы каждая строка имела границу 1px вдоль нижней части, чтобы визуально…

CSS Граница Изображения

Наверное простой вопрос это, но… Я могу применить CSS ко всем изображениям, используя img <> в CSS. Некоторые изображения имеют границу, указанную в html (например, border=1) — из редактора…

Я использую Firefox 3.5.7, и у меня есть тот же CSS, используемый в нескольких таблицах HTML, но есть некоторые примеры, где части границ не показаны. Что для меня не имеет смысла, так это то, что…

Html,css: двойная граница строк таблицы

Я пытаюсь copy http://grooveshark.com/#!/album/Halo+LP/5904939 вот эта таблица. Это моя попытка http://jsfiddle.net/d1zqsayh/25 / Проблема с моим кодом заключается в том, что как-то, когда вы…

Граница таблицы html

Я создаю кучу таблиц сейчас, когда и когда я добавляю заголовок таблицы (<th>) table row <tr> и добавляю к нему границу, появляется несколько границ. Я имею в виду, что у меня есть два…

Граница css для таблицы html

У меня есть две таблицы, одна с идентификатором =’data’. Мой вопрос заключается в том, что я хочу применить нижеприведенные свойства границы только для таблицы, но из приведенного ниже…

Нижняя граница для самого .блок1 див И.блок 2 отсутствует. То.заголовок имеет все границы, я пытался .блок и у него есть границы, но эти 2 отсутствуют только внизу. Я не могу этого понять. Почему…

Граница таблицы html — CodeRoad

Я создаю кучу таблиц сейчас, когда и когда я добавляю заголовок таблицы (<th>) table row <tr> и добавляю к нему границу, появляется несколько границ. Я имею в виду, что у меня есть два заголовка таблицы в строке, поэтому каждый тег th добавит свою собственную границу, но я просто хочу, чтобы граница между двумя заголовками таблицы (th).

Если вы ссылаетесь на приведенный выше код, и если я добавлю границы, чтобы сказать, что тег будет 2 границы между header1 и header2. Я просто хочу 1.

html css html-table

Поделиться Источник kjkjl 29 января 2010 в 20:07

3 Ответа

Ваше описание проблемы расплывчато (в будущем, пожалуйста, придумайте SSCCE, чтобы каждый мог просто скопировать его и посмотреть , что именно Вы имеете в виду), но, по крайней мере, общим решением этой проблемы «double border» является добавление свойства border-collapse: collapse в рассматриваемую родительскую таблицу:

Также см. Эту статью Quirksmode для нескольких примеров.

Поделиться BalusC 29 января 2010 в 20:11

Поделиться ЯegDwight 29 января 2010 в 20:10

Если вы гарантированно имеете 2 и только 2-й столбцы, и если я читаю ваш вопрос правильно, что вы просто хотите границу между ними (т. е. в середине двух тегов), то просто примените границу-справа налево:

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

Поделиться KP. 29 января 2010 в 20:16

Граница таблицы-строки невидима

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

Неравномерная пунктирная граница в ячейках таблицы

Я применил CSS border-bottom:1px dashed #494949; к нескольким последовательным ячейкам одной строки таблицы HTML, но граница не является однородной. Тире в конце каждой ячейки кажутся немного…

html граница таблицы

У меня есть следующее: <table style=margin-right:1em;margin-bottom:1em;border:4px;> Хотя у меня есть граница вокруг стола, никакой границы не появляется. Есть идеи?

граница таблицы не отображается в сгенерированном pdf из abcpdf

Почему все границы или подобные им отсутствуют? Такие как границы таблицы, тег hr, даже граница формы не работает. я конвертирую контекст html в pdf с помощью abcpdf, и html можно правильно…

Обычная граница таблицы HTML появляется очень странно в Firefox

Я создал таблицу HTML и использовал следующий CSS для стилизации границы, как я хотел: Верхняя строка и столбец должны быть одного цвета, а rest таблицы должен быть stripes альтернативных цветов…

IE6.0/Firefox проблема браузера, граница таблицы не одинакова в обоих браузерах

Возможный Дубликат : html граница таблицы не согласована в IE6.0 и firefox граница в таблице html выглядит по-разному в таблицах IE и mozilla . граница одинакова со всех сторон в mozilla , но в…

HTML граница столешницы на JTextpane

Я хочу показать только верхние границы таблицы html в JTextPane. Ниже код прекрасно работает в Java 1.7, но в Java 1.6 граница не появляется. Есть ли способ сделать это в Java 1.6? import…

Как сделать так, чтобы граница строки таблицы не охватывала всю ширину таблицы?

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

HTML Div граница не отображается

Я пытаюсь добавить границу к элементу div в HTML. Ниже приведен мой код. #container-border < border-width: 2px; border-color: red; ><div … </div> По какой-то…

Почему в некоторых таблицах HTML отсутствует граница Firefox

Я использую Firefox 3.5.7, и у меня есть тот же CSS, используемый в нескольких таблицах HTML, но есть некоторые примеры, где части границ не показаны. Что для меня не имеет смысла, так это то, что…

CSS html таблицы левая и правая границы

Я пытаюсь написать некоторые CSS, которые сделают так, чтобы моя таблица html имела только горизонтальные границы, а не вертикальные границы между столбцами.

Вот что у меня есть до сих пор:

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

EDIT я могу заставить его делать то, что я хочу здесь: http://jsfiddle.net/QZwt5/26/ но когда я беру эту точную таблицу и точную css в dreamweaver, а затем ftp на мой сервер, я все еще получаю тонкие белые линии между каждой ячейкой. изображение http://img267.imageshack.us/img267/9135/temppb.jpg

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

Все работает на сервере Ubuntu, я строю его в winXP, а затем от ftp до Apache, поэтому могут возникнуть некоторые проблемы с разрешениями, мешающие CSS?

html css css-tables

Поделиться Источник user1245706 14 марта 2012 в 22:23

4 Ответов

Это может быть достигнуто просто с помощью CSS

Поделиться jacktheripper 14 марта 2012 в 22:34

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

Поделиться Steve 14 марта 2012 в 22:30

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

Если это так, установите значения border-left и border-right в ячейках td , чтобы они были того же цвета, что и фон,на «hide».

Поделиться Niet the Dark Absol 14 марта 2012 в 22:27

Поделиться Starx 14 марта 2012 в 22:38

правая и левая границы отображаются поверх верхней границы

Как вы можете видеть здесь: http://jsfiddle.net/vpHW5 / правая и левая границы появляются поверх верхней границы. Как мне это исправить? Вот код css: div < background:#e8e3dd; border-right:1px solid…

Перекрывающиеся левая и правая границы элемента таблицы

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

Правая граница таблицы (bootstrap + custom css)

Я использую bootstrap 2.3 версии и некоторые пользовательские стили CSS. У меня возникла следующая проблема: когда я пытаюсь добавить правую границу к последнему td в строке, он не отображается. Но…

CSS левая и правая стороны

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

включение HTML конкретной границы таблицы?

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

CSS U-образные или изогнутые границы

У меня проблема с границами CSS(3). Я пытаюсь преобразовать текстовое поле ввода, придав ему U-образные границы. Левая и правая границы должны иметь 50% высоты. Это означает, что верхняя левая,…

CSS проблема угла границы

Я создаю меню с 4 различными цветовыми границами. При просмотре в Safari 5 левая и правая границы идут сверху вниз без углов вокруг коробки. При просмотре в FF 4 существует угол границы в элементах…

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

Я хочу, чтобы левая и правая стороны границы заголовка моих осенних нарядов были ближе к тексту, с отступом 2px для каждого из них. Я попытался добиться этого, установив отступы влево и вправо на…

Левая и правая сторона контейнера границы не совпадают

Я работал на своем бизнес-сайте, в течение прошлой недели, и вчера я попал в проблему, которую я не могу найти решение. http://multisupport.dk / Как вы можете видеть, левая граница отличается от…

Есть ли в любом случае несколько цветов для верхней границы в css?

У меня есть ячейка таблицы и прямо сейчас у меня есть: #myCell < border-top: 1px solid brown; >и я хотел посмотреть, есть ли в любом случае несколько цветов, разбитых на проценты. Например, что-то,…

Как изменить границы таблицы style/size/color в HTML

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

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

Может ли кто-нибудь дать мне подсказку, как сделать эту таблицу в .html ? Какой код таблицы должен выглядеть в notepad doc ? Я полностью теряюсь в них: расстояние между ячейками=»0″ заполнение ячеек=»4″,… (и так до сих пор и так далее).

Может быть, просто не невозможно создать эту таблицу в html ?

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

enter image description here

html css colors html-table border

Поделиться Источник Avdryz 29 октября 2013 в 23:55

3 Ответа

Вы можете стилизовать каждую ячейку. Например:

В таблице выше я добавил некоторые классы CSS в строки:

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

Поделиться cortex 30 октября 2013 в 00:11

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

Поделиться Yen Howell 30 октября 2013 в 00:19

вы можете использовать это в файле html

Поделиться Источник Rajeev 05 января 2013 в 17:08

1 Ответ

это должно сработать:

потому что с table в селекторе CSS вы будете вызывать все таблицы, если только не укажете класс, подобный table.class < . >��

// редактировать

хорошо, я должен сказать:

будет и работать…

главное, что вы указываете ID или класс нужного вам элемента в CSS, чтобы применить свой стиль к нужному вам элементу…

Поделиться fdiv_bug 05 января 2013 в 17:10

css/html граница таблицы

Я хотел бы варианты для создания таблиц в моем css. Один с границей 5px сплошной черный и один с 0px. В настоящее время в CSS у меня есть #contentcolumn table < border: 5px solid black; width:…

Неравномерная пунктирная граница в ячейках таблицы

Я применил CSS border-bottom:1px dashed #494949; к нескольким последовательным ячейкам одной строки таблицы HTML, но граница не является однородной. Тире в конце каждой ячейки кажутся немного…

CSS граница ячейки таблицы перекрывающая границу таблицы

Я едва ли эксперт в css, так что это немного расстраивает. У меня есть сетка, которая была заполнена ретранслятором. Я хочу, чтобы каждая строка имела границу 1px вдоль нижней части, чтобы визуально…

HTML граница таблицы: таблица стилей агента пользователя переопределяет CSS?

У меня есть таблица HTML, которая нуждается в изменении цвета границы. Я не могу этого понять. HTML <table> <thead> <tr> <th>Name</th> <th>Conditions</th>…

Обычная граница таблицы HTML появляется очень странно в Firefox

Я создал таблицу HTML и использовал следующий CSS для стилизации границы, как я хотел: Верхняя строка и столбец должны быть одного цвета, а rest таблицы должен быть stripes альтернативных цветов…

Почему в некоторых таблицах HTML отсутствует граница Firefox

Я использую Firefox 3.5.7, и у меня есть тот же CSS, используемый в нескольких таблицах HTML, но есть некоторые примеры, где части границ не показаны. Что для меня не имеет смысла, так это то, что…

CSS Граница Изображения

Наверное простой вопрос это, но… Я могу применить CSS ко всем изображениям, используя img <> в CSS. Некоторые изображения имеют границу, указанную в html (например, border=1) — из редактора…

Html,css: двойная граница строк таблицы

Я пытаюсь copy http://grooveshark.com/#!/album/Halo+LP/5904939 вот эта таблица. Это моя попытка http://jsfiddle.net/d1zqsayh/25 / Проблема с моим кодом заключается в том, что как-то, когда вы…

Граница таблицы html

Я создаю кучу таблиц сейчас, когда и когда я добавляю заголовок таблицы (<th>) table row <tr> и добавляю к нему границу, появляется несколько границ. Я имею в виду, что у меня есть два…

html для удаления границы из внутренней таблицы

я хотел бы удалить границу с боков и нижней части моего внутреннего стола и растянуть его так, чтобы он стал таким же длинным, как внешний стол. Я пробовал использовать border-right: none; в моем…

2.8. CSS-таблицы

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

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

Форматирование таблиц

  • Содержание:

1. Границы таблицы border

Таблица и ячейки внутри неё по-умолчанию отображаются в браузере без видимых границ. Границы таблицы задаются свойством border :

Границы ячеек заголовка каждого столбца задаются для элемента th :

Границы ячеек тела таблицы задаются для элемента td :

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

Внешнюю границу таблицы можно выделить, задав ей увеличенную ширину:

Границы можно задавать частично:

Подробнее о свойстве border вы можете прочитать здесь.

2. Как задать ширину и высоту таблицы

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

Ширина таблицы и столбцов задаётся с помощью свойства width . Если для таблицы задано table , то ширина таблицы будет равна ширине блока-контейнера, в котором она находится.

Ширину таблицы и столбцов обычно задают в px или % , например:

Высота таблицы не задается. Высотой рядов таблицы можно управлять, добавив верхний и нижний padding для элементов <td> и <th> .

Фиксировать высоту с помощью свойства height не рекомендуется.

3. Как задать фон таблицы

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

  • заливка сплошным цветом, , .

4. Столбцы таблицы

Модель CSS таблиц ориентирована в основном на строки (ряды), формируемые с помощью элемента <tr> . На практике бывают случаи, когда необходимо специальное форматирование столбцов, которое возможно следующими способами:

  • с помощью элемента <col> можно задать фон для любого количества столбцов;
  • с помощью селектора table td:first-child , table td:last-child можно задать стили для первого или последнего столбца таблицы (за исключением первой ячейки заголовка таблицы);
  • с помощью селектора table td:nth-child(правило отбора столбцов) можно задать стили для любых столбцов таблицы.

Подробнее про элемент <col> вы можете прочитать здесь.

Подробнее про CSS-селекторы вы сможете прочитать здесь.

5. Как добавить таблице заголовок

Добавить заголовок в таблицу можно с помощью элемента <caption> , а с помощью свойства caption-side его можно поместить перед таблицей или под ней. Для горизонтального выравнивания текста заголовка применяется свойство text-align .

caption-side
Значения:
top Заголовок таблицы располагается над таблицей. Значение по умолчанию.
bottom Располагает заголовок под таблицей.
initial Устанавливает значение свойства в значение по умолчанию.
inherit Наследует значение свойства от родительского элемента.

caption_sideРис. 1. Пример отображения заголовка под таблицей

6. Как убрать промежуток между рамками ячеек

Рамки ячеек таблицы по умолчанию разделены небольшим промежутком. Если задать для таблицы border-collapse: collapse , то промежуток уберётся.

border-collapse
Значения:
separate Рамки ячеек располагаются раздельно.
collapse Рамки ячеек сливаются в одну, а промежутки между рамками убираются.
initial Устанавливает значение свойства в значение по умолчанию.
inherit Наследует значение свойства от родительского элемента.

table_border_collapseРис. 2. Пример таблиц со сливающимися и раздельными рамками ячеек

7. Как увеличить промежуток между рамками ячеек

С помощью свойства border-spacing можно менять расстояние между рамками ячеек. Данное свойство применяется к таблице в целом.

border-spacing
Значения:
<длина> <длина> Добавляет промежутки между рамками как по вертикали, так и по горизонтали. Если заданы две длины, то первая всегда определяет горизонтальный промежуток, а вторая — вертикальный.
initial Устанавливает значение свойства в значение по умолчанию.
inherit Наследует значение свойства от родительского элемента.

table_border_spacingРис. 3. Пример таблиц с увеличенными промежутками между рамками ячеек

8. Как скрыть пустые ячейки таблицы

Свойство empty-cells скрывает или показывает пустые ячейки. Действует только на ячейки, которые не содержат какой-либо контент. Если для ячейки задан фон, а для таблицы задано table , то ячейка не будет скрыта.

empty-cells
Значения:
show Рамка и фон пустой ячейки будут отрисовываться так же, как для ячейки таблицы, имеющей содержимое.
hide Если все ячейки строки пусты, то вся строка отображается так, если бы было задано значение display: none .
initial Устанавливает значение свойства в значение по умолчанию.
inherit Наследует значение свойства от родительского элемента.

table_emptyРис. 4. Пример скрытия пустой ячейки таблицы

9. Компоновка макета таблицы с помощью свойства table-layout

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

Свойство не наследуется.

table-layout
Значения:
auto Значение по умолчанию. Ширина макета таблицы определяется шириной её содержимого с учетом значений свойств padding-left , padding-right , border-left width плюс одна ширина border-right последней ячейки в ряду, или заданной шириной ячеек и толщиной рамки. Если ширина ячеек не задана явно, они могут быть разной ширины.
fixed Свойство сработает только в том случае, если для таблицы задана ширина. Ширина ячеек будет одинаковой, а содержимое ячеек, которое не помещается в ячейку, будет наползать под содержимое соседней ячейки.
initial Устанавливает значение свойства в значение по умолчанию.
inherit Наследует значение свойства от родительского элемента.

10. Лучшие макеты таблиц

По материалам статьи Top 10 CSS Table Designs из журнала Smashing Magazine

top-table

1. Горизонтальный минимализм

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

top-table1

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

top-table2

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

top-table3

2. Вертикальный минимализм

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

top-table4

3. «Коробочный» стиль

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

top-table5

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

top-table6

4. Горизонтальная зебра

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

top-table7

5. Газетный стиль

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

top-table8

top-table9

top-table10

6. Фон таблицы

Если вы ищете быстрый и уникальный способ оформления таблицы, выберите привлекательное изображение или фото, относящиеся к теме таблицы и установите ее фоном таблицы.

Как сделать границы в таблице css

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


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

Модель

, а правую границу между ячейками убираем.

Разметка HTML

table <
border-spacing: 0 10px;
font-family: «Open Sans», sans-serif;
font-weight: bold;
>
th <
padding: 10px 20px;
background: #56433D;
color: #F9C941;
border-right: 2px solid;
font-size: 0.9em;
>
th:first-child <
text-align: left;
>
th:last-child <
border-right: none;
>
td <
vertical-align: middle;
padding: 10px;
font-size: 14px;
text-align: center;
border-top: 2px solid #56433D;
border-bottom: 2px solid #56433D;
border-right: 2px solid #56433D;
>
td:first-child <
border-left: 2px solid #56433D;
border-right: none;
>
td:nth-child(2) <
text-align: left;
>


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

Разметка HTML

Company Q1 Q2 Q3 Q4
Microsoft 20.3 30.5 23.5 40.3
Google 50.2 40.63 45.23 39.3
Apple 25.4 30.2 33.3 36.7
IBM 20.4 15.6 22.3 29.3

font-size: 14px;
border-collapse: collapse;
text-align: center;
>
th, td:first-child <
background: #AFCDE7;
color: white;
padding: 10px 20px;
>
th, td <
border-style: solid;
border-width: 0 1px 1px 0;
border-color: white;
>
td <
background: #D8E6F3;
>


Благодаря добавлению в спецификацию CSS3 свойства border-radius , появилась возможность закругления углов таблицы без использования фоновых изображений. Чтобы добиться такого эффекта, нужно закруглить углы соответствующих ячеек.

Разметка HTML
— аналогично с примером 2.

table <
font-family: «Lucida Sans Unicode», «Lucida Grande», Sans-Serif;
font-size: 14px;
border-radius: 10px;
border-spacing: 0;
text-align: center;
>
th <
background: #BCEBDD;
color: white;
text-shadow: 0 1px 1px #2D2020;
padding: 10px 20px;
>
th, td <
border-style: solid;
border-width: 0 1px 1px 0;
border-color: white;
>
th:first-child, td:first-child <
text-align: left;
>
th:first-child <

border-right: none;
>
td <
padding: 10px 20px;
background: #F8E391;
>
tr:last-child td:first-child <
border-radius: 0 0 0 10px;
>
tr:last-child td:last-child <
border-radius: 0 0 10px 0;
>
tr td:last-child <
border-right: none;
>

4. Таблица с раздельными ячейками

Разметка HTML

— аналогично с примером 2.

table <
font-family: «Lucida Sans Unicode», «Lucida Grande», Sans-Serif;
text-align: left;
border-collapse: separate;
border-spacing: 5px;
background: #ECE9E0;
color: #656665;
border: 16px solid #ECE9E0;
border-radius: 20px;
>
th <
font-size: 18px;
padding: 10px;
>
td <
background: #F5D7BF;
padding: 10px;
>

Разметка HTML

My working weeks, March 2015
Monday Tuesday Wednesday Thursday Friday
2 3 4 5 6
9 10 11 12 13
16 17 18 19 20
23 24 25 26 27
30 31

table <
font-family: «Lucida Sans Unicode», «Lucida Grande», Sans-Serif;
text-align: center;
border-collapse: collapse;
border-spacing: 5px;
background: #E1E3E0;
border-radius: 20px;
>
th <
font-size: 22px;
font-weight: 300;
padding: 12px 10px;

color: #F56433;
>
tbody tr:nth-child(2) <
border-bottom: 2px solid #F56433;
>
td <
padding: 10px;
color: #8D8173;
>

Разметка HTML

Employee Salary Bonus Supervisor
Stephen C. Cox $300 $50 Bob
Josephin Tan $150 Annie
Joyce Ming $200 $35 Andy
James A. Pentel $175 $25 Annie

table <
font-family: «Lucida Sans Unicode», «Lucida Grande», Sans-Serif;
font-size: 14px;
text-align: left;
border-collapse: collapse;
border-radius: 20px;
box-shadow: 0 0 0 10px #F2906B;
color: #452F21;
>
th <
padding: 10px 8px;
background: white;
>
table th:first-child <
border-top-left-radius: 20px;
>
table th:last-child <
border-top-right-radius: 20px;
>
td <
border-top: 10px solid #F2906B;
padding: 8px;
background: white;
>
table td:first-child <
border-bottom-left-radius: 20px;
>
table td:last-child <
border-bottom-right-radius: 20px;
>


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

Разметка HTML

Q1 Q2 Q3 Q4
Microsoft 20.3 30.5 23.5 40.3
Google 50.2 40.63 45.23 39.3
Apple 25.4 30.2 33.3 36.7
IBM 20.4 15.6 22.3 29.3

table <
border-spacing: 0;
empty-cells: hide;
>
td <
padding: 10px 20px;
text-align: center;

transition: all 0.5s linear;
>
td:first-child <
text-align: left;
color: #3D3511;
font-weight: bold;
>
th <
padding: 10px 20px;
color: #3D3511;
border-bottom: 1px solid #F4EEE8;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
>
td:nth-child(even) <
background: #F6D27E;
>
td:nth-child(odd) <
background: #D1C7BF;
>
th:nth-child(even) <
background: #F6D27E;
>
th:nth-child(odd) <
background: #D1C7BF;
>
.round-top <
border-top-left-radius: 5px;
>
.round-bottom <
border-bottom-left-radius: 5px;
>
tr:hover td <
background: #D1C7BF;
font-weight: bold;
>

Разметка HTML

table <
font-family: «Lucida Sans Unicode», «Lucida Grande», Sans-Serif;
border-collapse: collapse;
color: #686461;
>
caption <
padding: 10px;
color: white;
background: #8FD4C1;
font-size: 18px;
text-align: left;
font-weight: bold;
>
th <
border-bottom: 3px solid #B9B29F;
padding: 10px;
text-align: left;
>
td <
padding: 10px;
>
tr:nth-child(odd) <
background: white;
>
tr:nth-child(even) <
background: #E8E6D1;
>

Разметка HTML

Comedy Adventure Action Children
Scary Movie Indiana Jones The Punisher Wall-E
Epic Movie Star Wars Bad Boys Madagascar
Spartan LOTR Die Hard Finding Nemo
Dr. Dolittle The Mummy 300 A Bug»s Life

Table_col <
font-family: «Lucida Sans Unicode», «Lucida Grande», Sans-Serif;
font-size: 14px;
width: 660px;
background: white;
text-align: left;
border-collapse: collapse;
color: #3E4347;
>
.table_col th:first-child, .table_col td:first-child <
color: #F5F6F6;
border-left: none;
>
.table_col th <
font-weight: normal;
border-bottom: 2px solid #F5E1A6;

padding: 8px 10px;
>
.table_col td <
border-right: 20px solid white;
border-left: 20px solid white;
padding: 12px 10px;
color: #8b8e91;
>

Разметка HTML

Company Q1 Q2 Q3 Q4
Microsoft 20.3 30.5 23.5 40.3
Google 50.2 40.63 45.23 39.3
Apple 25.4 30.2 33.3 36.7
IBM 20.4 15.6 22.3 29.3

Table_blur <
background: #f5ffff;
border-collapse: collapse;
text-align: left;
>
.table_blur th <
border-top: 1px solid #777777;

box-shadow: inset 0 1px 0 #999999, inset 0 -1px 0 #999999;
background: linear-gradient(#9595b6, #5a567f);
color: white;
padding: 10px 15px;
position: relative;
>
.table_blur th:after <
content: «»;
display: block;
position: absolute;
left: 0;
top: 25%;
height: 25%;
width: 100%;
background: linear-gradient(rgba(255, 255, 255, 0), rgba(255,255,255,.08));
>
.table_blur tr:nth-child(odd) <
background: #ebf3f9;
>
.table_blur th:first-child <
border-left: 1px solid #777777;
border-bottom: 1px solid #777777;
box-shadow: inset 1px 1px 0 #999999, inset 0 -1px 0 #999999;
>
.table_blur th:last-child <
border-right: 1px solid #777777;
border-bottom: 1px solid #777777;
box-shadow: inset -1px 1px 0 #999999, inset 0 -1px 0 #999999;
>
.table_blur td <
border: 1px solid #e3eef7;
padding: 10px 15px;
position: relative;
transition: all 0.5s ease;
>
.table_blur tbody:hover td <
color: transparent;
text-shadow: 0 0 3px #a09f9d;
>
.table_blur tbody:hover tr:hover td <
color: #444444;
text-shadow: none;
>

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

Ширина таблицы

По умолчанию ширина таблицы устанавливается браузером самостоятельно, исходя из объёма в ней табличных данных. Если текста в ячейках много, тогда таблица будет занимать всю доступную ей ширину, а если мало, то ширина таблицы автоматически уменьшится. При наличии на странице нескольких таблиц их разная ширина выглядит порой небрежно. Так что лучше явно задать ширину таблицы в процентах, пикселях, em или любых других единицах CSS, как показано в примере 1.

Пример 1. Ширина таблицы в процентах

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

Исходно любая таблица располагается по левому краю окна браузера. Можно выровнять её по центру, если только таблица не занимает всю доступную область, другими словами, меньше 100%. Для этого к стилю таблицы следует добавить отступы через свойство margin со значением auto , как показано в примере 2.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *