Круглые формы таблиц css.

06.08.2020 Ios

Цель урока: Знакомство со свойствами таблицы и с принципами табличной верстки CSS


Рассмотрим основные CSS свойства таблицы

border

Свойство рассматривается в одном и включает одновременно несколько свойств:

  • BORDER-STYLE (СТИЛЬ ГРАНИЦЫ)
  • BORDER-WIDTH (ШИРИНА ГРАНИЦЫ)
  • BORDER-COLOR (ЦВЕТ ГРАНИЦЫ)

Существует также сборное правило:

table.collapse{ border-collapse:collapse; } table.separate{ border-collapse:separate; }

Результат:

width и height
(высота и ширина таблицы)

Значения:

Пример:

text-align
(выравнивание по горизонтали)

Значения:

  • center (по центру)
  • left (по левому краю)
  • right (по правому краю)
  • justify (по ширине)

vertical-align
(выравнивание по вертикали)

Значения:

  • baseline (по базовой линии)
  • sub (как подиндекс)
  • super (как надиндекс)
  • top (по верхнему краю)
  • middle (посередине)
  • bottom (по нижнему краю)
  • % (от высоты межстрочного интервала)

Пример:

padding
(внутренние отступы в таблице)

background-color (задний фон)
color (цвет текста)

Табличная верстка CSS

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

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

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

Табличная верстка из двух колонок

Один из самых распространённых способов верстки — две колонки, т.е. страница делится на две части.

  • Обычно левая часть — меню и дополнительные элементы, а правая часть — основная, для главного контента.
  • В таком случае ширина левой части задается определенным значением, т.е. жестко, а правая часть занимает оставшуюся область страницы.
  • В таком случае необходимо задать общую ширину всей таблицы (тега table) в процентах через свойство width (100%), а для первой ячейки (тега td) установить ширину (также свойство width) в пикселах или процентах.
  • Пример: задать основной каркас страницы из двух колонок: первая — с фиксированным размером, вторая — на оставшуюся область браузера. Выполнить задание используя CSS стили ()


    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "right" > 2</ td > </ tr > </ table > ...

    1
    ...

    Результат:

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


    Выполнение:
    Добавим новые свойства стилей:

    /* для левой ячейки */ td#left{ width:200px; background: #ccc; border:1px solid black; /* временно обозначим границы */ } /* для правой ячейки */ td#right{ background: #fc3; border:1px solid black; /* временно обозначим границы */ } /* для разделителя */ #razdel{ width: 10px; /* Расстояние между колонками */ }

    Все вместе:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "razdel" > <td id = "right" > 2</ td > </ tr > </ table >

    1

    Для разделителя была добавлена новая ячейка.
    Результат:

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


    Выполнение:
    Добавим новые свойства границ для ячеек:

    /* для левой ячейки */ td#left{ width:200px; background: #ccc; /* Цвет фона левой колонки */ /* новое */ border-right: 1px dashed #000; /* Параметры правой пунктирной границы */ }

    Все вместе:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "right" > 2</ td > </ tr > </ table >

    1

    Результат:

    Табличная верстка из трех колонок

    Существует понятие фиксированного или «резинового» макета верстки.

    Фиксированный макет CSS

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

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

    • левая колонка — 150 пикселей;
    • средняя колонка — 400 пикселей;

    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "central" > 2</ td > <td id = "right" > 3</ td > </ tr > </ table >

    1 2

    Результат:

    Резиновый макет

    • Ширина таблицы при использовании «резинового» дизайна устанавливается в % от ширины окна браузера . Т.о. при изменении окна браузера, изменяются и размеры таблицы.
    • Ширина всех ячеек может устанавливаться в процентах .
    • Второй вариант, когда ширина некоторых ячеек устанавливается в процентах , а некоторых — в пикселях .

    Важно: Сумма ширины всех колонок должна получиться 100%, независимо от ширины таблицы.


    Пример:

    • левая колонка — 20%;
    • средняя колонка — 40%;
    • правая колонка — 40%;

    Задать фон для колонок и визуально разделить колонки границей.

    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "central" > 2</ td > <td id = "right" > 3</ td > </ tr > </ table >

    1 2

    Результат:

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

    Пример: создать шаблон страницы из трех колонок. Использовать резиновый макет табличной верстки:

    • левая колонка — 150 пикселей;
    • средняя колонка — 40%;
    • правая колонка — 200 пикселей;

    Задать фон для колонок и визуально разделить колонки границей.


    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "central" > 2</ td > <td id = "right" > 3</ td > </ tr > </ table >

    1 2

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

    Использование вложенной таблицы в резиновом макете

    Если ширина двух колонок устанавливается в процентах, а третьей - в пикселях, обойтись одной таблицей не получится . Так, если ширина всей таблицы равна 100 процентов, первой колонки - 200 пикселей, а оставшихся колонок по 20 процентов, то простое вычисление показывает, что размер первой колонки получается равным 60 процентов. В таком случае заданное значение в пикселях браузером не воспримется, а размер будет установлен в процентах.

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

    Пример: создать шаблон страницы из трех колонок. Использовать резиновый макет с вложенной таблицей:

    • левая колонка — 150 пикселей;
    • средняя колонка — 60%;
    • правая колонка — 40%;

    Задать фон для колонок.

    Выполнение:

    , , и нельзя, поэтому добавляем их к селектору table и td (пример 7).

    Пример 7. Линии между строк

    Таблица

    1
    2

    Атрибуты тегов cellpadding и cellspacing здесь необходимы, для того, чтобы не было «зазора» между таблицами.
    Результат:

    Цель урока: Знакомство со свойствами таблицы и с принципами табличной верстки CSS


    Рассмотрим основные CSS свойства таблицы

    border

    Свойство рассматривается в одном и включает одновременно несколько свойств:

    • BORDER-STYLE (СТИЛЬ ГРАНИЦЫ)
    • BORDER-WIDTH (ШИРИНА ГРАНИЦЫ)
    • BORDER-COLOR (ЦВЕТ ГРАНИЦЫ)

    Существует также сборное правило:

    table.collapse{ border-collapse:collapse; } table.separate{ border-collapse:separate; }

    Результат:

    width и height
    (высота и ширина таблицы)

    Значения:

    Пример:

    text-align
    (выравнивание по горизонтали)

    Значения:

    • center (по центру)
    • left (по левому краю)
    • right (по правому краю)
    • justify (по ширине)

    vertical-align
    (выравнивание по вертикали)

    Значения:

    • baseline (по базовой линии)
    • sub (как подиндекс)
    • super (как надиндекс)
    • top (по верхнему краю)
    • middle (посередине)
    • bottom (по нижнему краю)
    • % (от высоты межстрочного интервала)

    Пример:

    padding
    (внутренние отступы в таблице)

    background-color (задний фон)
    color (цвет текста)

    Табличная верстка CSS

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

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

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

    Табличная верстка из двух колонок

    Один из самых распространённых способов верстки — две колонки, т.е. страница делится на две части.

  • Обычно левая часть — меню и дополнительные элементы, а правая часть — основная, для главного контента.
  • В таком случае ширина левой части задается определенным значением, т.е. жестко, а правая часть занимает оставшуюся область страницы.
  • В таком случае необходимо задать общую ширину всей таблицы (тега table) в процентах через свойство width (100%), а для первой ячейки (тега td) установить ширину (также свойство width) в пикселах или процентах.
  • Пример: задать основной каркас страницы из двух колонок: первая — с фиксированным размером, вторая — на оставшуюся область браузера. Выполнить задание используя CSS стили ()


    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "right" > 2</ td > </ tr > </ table > ...

    1
    ...

    Результат:

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


    Выполнение:
    Добавим новые свойства стилей:

    /* для левой ячейки */ td#left{ width:200px; background: #ccc; border:1px solid black; /* временно обозначим границы */ } /* для правой ячейки */ td#right{ background: #fc3; border:1px solid black; /* временно обозначим границы */ } /* для разделителя */ #razdel{ width: 10px; /* Расстояние между колонками */ }

    Все вместе:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "razdel" > <td id = "right" > 2</ td > </ tr > </ table >

    1

    Для разделителя была добавлена новая ячейка.
    Результат:

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


    Выполнение:
    Добавим новые свойства границ для ячеек:

    /* для левой ячейки */ td#left{ width:200px; background: #ccc; /* Цвет фона левой колонки */ /* новое */ border-right: 1px dashed #000; /* Параметры правой пунктирной границы */ }

    Все вместе:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "right" > 2</ td > </ tr > </ table >

    1

    Результат:

    Табличная верстка из трех колонок

    Существует понятие фиксированного или «резинового» макета верстки.

    Фиксированный макет CSS

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

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

    • левая колонка — 150 пикселей;
    • средняя колонка — 400 пикселей;

    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "central" > 2</ td > <td id = "right" > 3</ td > </ tr > </ table >

    1 2

    Результат:

    Резиновый макет

    • Ширина таблицы при использовании «резинового» дизайна устанавливается в % от ширины окна браузера . Т.о. при изменении окна браузера, изменяются и размеры таблицы.
    • Ширина всех ячеек может устанавливаться в процентах .
    • Второй вариант, когда ширина некоторых ячеек устанавливается в процентах , а некоторых — в пикселях .

    Важно: Сумма ширины всех колонок должна получиться 100%, независимо от ширины таблицы.


    Пример:

    • левая колонка — 20%;
    • средняя колонка — 40%;
    • правая колонка — 40%;

    Задать фон для колонок и визуально разделить колонки границей.

    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "central" > 2</ td > <td id = "right" > 3</ td > </ tr > </ table >

    1 2

    Результат:

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

    Пример: создать шаблон страницы из трех колонок. Использовать резиновый макет табличной верстки:

    • левая колонка — 150 пикселей;
    • средняя колонка — 40%;
    • правая колонка — 200 пикселей;

    Задать фон для колонок и визуально разделить колонки границей.


    Выполнение:

    </ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</ td > <td id = "central" > 2</ td > <td id = "right" > 3</ td > </ tr > </ table >

    1 2

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

    Использование вложенной таблицы в резиновом макете

    Если ширина двух колонок устанавливается в процентах, а третьей - в пикселях, обойтись одной таблицей не получится . Так, если ширина всей таблицы равна 100 процентов, первой колонки - 200 пикселей, а оставшихся колонок по 20 процентов, то простое вычисление показывает, что размер первой колонки получается равным 60 процентов. В таком случае заданное значение в пикселях браузером не воспримется, а размер будет установлен в процентах.

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

    Пример: создать шаблон страницы из трех колонок. Использовать резиновый макет с вложенной таблицей:

    • левая колонка — 150 пикселей;
    • средняя колонка — 60%;
    • правая колонка — 40%;

    Задать фон для колонок.

    Выполнение:

    и (пример 4).

    Пример 4. Создание зебры

    Таблица

    1
    2

    Атрибуты тегов cellpadding и cellspacing здесь необходимы, для того, чтобы не было «зазора» между таблицами.
    Результат:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Table { width: 100%; } .tbl-medium { width: 60%; } .tbl-small { width: 200px; }

    В данном примере ширина 100% применяется ко всем таблицам. Опять же, классы помогают установить ширину для выбранных таблиц задействуя ранее созданный класс. Чтобы указать таблице ширину в 200 пикселей надо добавить к элементу

    класс tbl-small .

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

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

    Пример 2. Выравнивание таблицы с помощью margin

    Таблица

    ...

    В данном примере для всех таблиц на странице задано выравнивание по центру.

    Цвет фона

    Цвет фона одновременно всех ячеек таблицы устанавливается через свойство background , которое применяется к селектору table . При этом следует помнить о правилах использования стилей, в частности, наследовании свойств элементов. Если одновременно с table задать цвет у селектора td или th , то он и будет установлен в качестве фона (пример 3).

    Пример 3. Цвет фона

    Таблица

    Вид соединения
    ВалВтулка
    СвободноеH9D10
    НормальноеN9Is9
    ПлотноеP9

    Результат данного примера показан на рис. 1.

    Рис. 1. Изменение цвета фона

    Если нам требуется сделать зебру - так называется чередование строк разного цвета, то следует воспользоваться псевдоклассом :nth-child , добавляя его к селектору tr . Чтобы зебра распространялась только на тело таблицы, а не её заголовок, отделим их друг от друга с помощью элементов

    Интервалы размеров, мм Допуск IT, мкм, для квалитетов
    5678
    До 3461014
    Св. 3 до 6581218
    Св. 6 до 10691522
    Св. 10 до 188111827
    Св. 18 до 309132133
    Св. 30 до 5011162539
    Св. 50 до 8013193046

    Результат данного примера показан на рис. 2.

    Рис. 2. Зебра

    Значение even у селектора :nth-child применяет стиль ко всем чётным строкам и задаёт их цвет фона. Можно, также, поменять его на odd , тогда серым цветом будут выделяться нечётные строки.

    Аналогичным образом цветом выделяются не строки, а колонки, для этого следует использовать селектор tbody td:nth-child(even) .

    Поля внутри ячеек

    Полем называется расстояние между границей ячейки и её содержимым. Без полей текст в таблице «налипает» на рамку, ухудшая тем самым его восприятие, добавление же полей позволяет улучшить читабельность текста. Для этой цели применяется стилевое свойство padding , которое работает с селектором td или th , как показано выше в примерах 3 и 4. Обычно указывают одно значение, оно тогда задаёт пустое пространство вокруг содержимого ячейки сразу со всех сторон. Два значения пишутся, когда надо задать разные поля по вертикали (первое значение) и горизонтали (второе значение).

    Расстояние между ячеек

    Между ячеек имеется небольшое пустое расстояние, которое не видно, пока для ячеек не установить границу или фоновый цвет. Исходно это расстояние равно 2px и его можно изменить с помощью свойства border-spacing , добавляя его к селектору table (пример 5).

    Пример 5. Использование border-spacing

    Table { border-spacing: 3px; /* Расстояние между ячеек */ } thead th { background: #e08156; /* Цвет фона заголовка */ color: #333; /* Цвет текста */ } td, th { padding: 5px; /* Поля в ячейках */ background: #4c715b; /* Цвет фона ячеек */ color: #f5e8d0; /* Цвет текста */ }

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

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

    Если к table добавляется свойство border-collapse со значением collapse , то border-spacing игнорируется, потому как расстояния между ячеек уже нет.

    Границы и рамки

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

    или ). Однако здесь нас подстерегают подводные камни. Поскольку рамка создаётся для каждой ячейки, то в местах соприкосновения ячеек получается граница удвоенной толщины. Для устранения указанной особенности существует несколько путей. Самый простой - воспользоваться свойством border-collapse со значением collapse . В его задачу входит отслеживать соприкосновение линий и вместо двойной границы изображать одинарную. Это свойство достаточно добавить к селектору table , а дальше оно всё сделает самостоятельно (пример 6).

    Пример 6. Применение свойства border-collapse при создании рамок таблицы

    Таблица

    OXX
    OOX
    XXO

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

    Рис. 4. Вид таблицы при использовании border-collapse

    На рис. 4а показана рамка таблицы, используемая по умолчанию. Обратите внимание, что внутри таблицы все линии имеют удвоенную толщину. Добавление border-collapse убирает эту особенность, и толщина всех линий становится одинаковой (рис. 4б).

    Линии не обязательно делать для всех сторон ячеек, согласно дизайну они могут отделять одну строку или колонку от другой. Для этого мы используем свойства border-bottom , border-left и другие подобные. Применять границы к элементам

    Вид соединения Поля допусков ширины шпоночного паза
    ВалВтулка
    СвободноеH9D10
    НормальноеN9Is9
    ПлотноеP9

    Результат данного примера показан на рис. 5.

    Рис. 5. Таблица с горизонтальными линиями

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

    Пример 8. Выравнивание содержимого ячеек по горизонтали

    Таблица

    Заголовок 1Ячейка 1Ячейка 2
    Заголовок 2Ячейка 3Ячейка 4

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

    Рис. 6. Выравнивание текста в ячейках

    Выравнивание по вертикали в ячейке всегда происходит по её центру, если это не оговорено особо. Это не всегда удобно, особенно для таблиц, у которых содержимое ячеек различается по высоте. В таком случае выравнивание устанавливают по верхнему краю ячейки с помощью свойства vertical-align со значением top , как показано в примере 9.

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

    Таблица

    Вид соединения Поля допусков ширины шпоночного паза
    ВалВтулка
    СвободноеH9D10
    НормальноеN9Is9
    ПлотноеP9

    В данном примере выравнивание текста происходит по верхнему краю. Результат примера показан на рис. 7.

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

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

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

    Стилизация таблиц с помощью CSS

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

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

    Наименование Описание Цена
    Имя Характеристики Стоимость
    Имя #2 Характеристики Стоимость
    Имя #3 Характеристики Стоимость

    Шаблоны CSS

    Шаблоны не претендуют на оригинальность, но могут быть полезные многим.

    Table {width: 100%; border-collapse: collapse;} table td {padding: 12px 16px;} table thead tr {font-weight: bold; border-top: 1px solid #e8e9eb;} table tr {border-bottom: 1px solid #e8e9eb;} table tbody tr:hover {background: #e8f6ff;}

    Кстати, если бы мы не использовали тег , то задать свои стили к первому ряду можно было с помощью псевдокласса:nth-child(1) .

    Table {width: 100%; border-collapse: collapse;} table thead tr {color: #ffffff; font-weight: bold; background: #00bf80;} table thead tr td {border: 1px solid #01ab73;} table tbody tr td {border: 1px solid #e8e9eb;} table tbody tr:nth-child(2n) {background: #f4f4f4;} table tbody tr:hover {background: #ebffe8;}

    Table {width: 100%; border-collapse: separate; border-spacing: 4px;} table thead tr {color: #ffffff; font-weight: bold;} table thead tr td {border-radius: 4px 4px 0 0; background: #2e82c3;} table tbody tr td {border: 1px solid #2e82c3; border-radius: 4px; background: #cbdfef;} table tbody tr td:hover {background: #a2c3dd; transition-duration: 0.2s;}

    Наименование Описание Цена
    Samsung Galaxy S8, S8 Plus 2400 ₽
    Xiaomi Redmi 4A, 4X 520 ₽
    Meizu M3S, M5S 720 ₽

    Table {width: 100%; text-align: center; border-bottom: 2px solid #dfdfdf; border-radius: 6px; border-collapse: separate; border-spacing: 0px;} table thead tr {color: #ffffff; font-weight: bold; background: #c83240;} table tr td {border-right: 1px solid #dfdfdf;} table tr td:last-child {border-right: 0px;} table tbody tr:nth-child(1n) {background: #f6f6f6;} table tbody tr:nth-child(2n) {background: #e6e6e6;} table tbody tr:hover {background: #ffe8e8; transition-duration: 0.6s;}

    Своойства CSS

    Что означают используемые свойства CSS в шаблонах:

    • width - ширина таблицы;
    • border-collapse - способ отображения границ ячеек вокруг таблицы;
    • border-spacing - расстояние между границами ячеек в таблице;
    • border-radius - скругление углов рамки;
    • padding - внутреннее расстояние элемента от края границы;
    • color - цвет элемента;
    • text-align - выравнивание текста по горизонтали;
    • font-weight - насыщенность шрифта;
    • background - параметры фона;
    • transition-duration - длительность анимации;
    • border - толщина, стиль и цвет границы вокруг элемента.