- Оформление таблиц
- Ширина таблицы
- Цвет фона
- Поля внутри ячеек
- Расстояние между ячеек
- Границы и рамки
- Выравнивание текста в ячейках
- См. также
- 51 Stylised CSS Tables
- 43 CSS Tables
- Table of Contents:
- Related Articles
- Tables
- Author
- Links
- Made with
- About a code
- Zigzag Table
- Author
- Links
- Made with
- About a code
- Table with Pagination
- Author
- Links
- Made with
- About a code
- Table with Frozen Table Header and Left Column
- Author
- Links
- Made with
- About the code
- Sort Table Rows By Table Headers
- Author
- Links
- Made with
- About the code
- Responsive Tables Using li
- Author
- Links
- Made with
- About the code
- Responsive Table HTML and CSS Only
- Responsive Table With Flexbox
- CSS Responsive Table Layout
- Fixed Table Header
- Responsive Table
- Pure CSS Table Highlight
- Author
- Links
- Made with
- About the code
- Sticky Table Headers by position: sticky;
- Responsive Table
- CSS Responsive Table & Detail View
- Author
- Links
- Made with
- About a code
- CSS Table
- Responsive Table
- Author
Оформление таблиц
Таблицы являются широко используемым элементом для представления различных данных на презентациях, лекциях, в рекламных листовках и не только. Благодаря своей наглядности, универсальности и простоте таблицы также повсеместно применяют на сайтах, чтобы лучше донести до читателя нужный материал. Добавляя к таблицам всю мощь стилей можно весьма удачно вписать таблицы в дизайн сайта, наглядно и красиво представить табличные данные.
Ширина таблицы
По умолчанию ширина таблицы устанавливается браузером самостоятельно, исходя из объёма в ней табличных данных. Если текста в ячейках много, тогда таблица будет занимать всю доступную ей ширину, а если мало, то ширина таблицы автоматически уменьшится. При наличии на странице нескольких таблиц их разная ширина выглядит порой небрежно. Так что лучше явно задать ширину таблицы в процентах, пикселях, em или любых других единицах CSS, как показано в примере 1.
Пример 1. Ширина таблицы в процентах
Исходно любая таблица располагается по левому краю окна браузера. Можно выровнять её по центру, если только таблица не занимает всю доступную область, другими словами, меньше 100%. Для этого к стилю таблицы следует добавить отступы через свойство margin со значением auto , как показано в примере 2.
Пример 2. Выравнивание таблицы с помощью margin
В данном примере для всех таблиц на странице задано выравнивание по центру.
Цвет фона
Цвет фона одновременно всех ячеек таблицы устанавливается через свойство background , которое применяется к селектору table . При этом следует помнить о правилах использования стилей, в частности, наследовании свойств элементов. Если одновременно с table задать цвет у селектора td или th , то он и будет установлен в качестве фона (пример 3).
Вид соединения | Поля допусков ширины шпоночного паза | |
---|---|---|
Вал | Втулка | |
Свободное | H9 | D10 |
Нормальное | N9 | Is9 |
Плотное | P9 |
Результат данного примера показан на рис. 1.
Рис. 1. Изменение цвета фона
Если нам требуется сделать зебру — так называется чередование строк разного цвета, то следует воспользоваться псевдоклассом :nth-child , добавляя его к селектору tr . Чтобы зебра распространялась только на тело таблицы, а не её заголовок, отделим их друг от друга с помощью элементов и (пример 4).
Интервалы размеров, мм | Допуск IT, мкм, для квалитетов | |||
---|---|---|---|---|
5 | 6 | 7 | 8 | |
До 3 | 4 | 6 | 10 | 14 |
Св. 3 до 6 | 5 | 8 | 12 | 18 |
Св. 6 до 10 | 6 | 9 | 15 | 22 |
Св. 10 до 18 | 8 | 11 | 18 | 27 |
Св. 18 до 30 | 9 | 13 | 21 | 33 |
Св. 30 до 50 | 11 | 16 | 25 | 39 |
Св. 50 до 80 | 13 | 19 | 30 | 46 |
Результат данного примера показан на рис. 2.
Значение even у селектора :nth-child применяет стиль ко всем чётным строкам и задаёт их цвет фона. Можно, также, поменять его на odd , тогда серым цветом будут выделяться нечётные строки.
Аналогичным образом цветом выделяются не строки, а колонки, для этого следует использовать селектор tbody td:nth-child(even) .
Поля внутри ячеек
Полем называется расстояние между границей ячейки и её содержимым. Без полей текст в таблице «налипает» на рамку, ухудшая тем самым его восприятие, добавление же полей позволяет улучшить читабельность текста. Для этой цели применяется стилевое свойство padding , которое работает с селектором td или th , как показано выше в примерах 3 и 4. Обычно указывают одно значение, оно тогда задаёт пустое пространство вокруг содержимого ячейки сразу со всех сторон. Два значения пишутся, когда надо задать разные поля по вертикали (первое значение) и горизонтали (второе значение).
Расстояние между ячеек
Между ячеек имеется небольшое пустое расстояние, которое не видно, пока для ячеек не установить границу или фоновый цвет. Исходно это расстояние равно 2px и его можно изменить с помощью свойства border-spacing , добавляя его к селектору table (пример 5).
Пример 5. Использование border-spacing
Добавляя этот стиль к любой таблице получим результат продемонстрированный на рис. 3.
Рис. 3. Вид таблицы с расстоянием между ячеек
Если к table добавляется свойство border-collapse со значением collapse , то border-spacing игнорируется, потому как расстояния между ячеек уже нет.
Границы и рамки
Пример 6. Применение свойства border-collapse при создании рамок таблицы
O | X | X |
O | O | X |
X | X | O |
Разница между границами таблицы при добавлении свойства border-collapse , а также без него, представлена на рис. 4.
а — свойство не установлено
Рис. 4. Вид таблицы при использовании border-collapse
На рис. 4а показана рамка таблицы, используемая по умолчанию. Обратите внимание, что внутри таблицы все линии имеют удвоенную толщину. Добавление border-collapse убирает эту особенность, и толщина всех линий становится одинаковой (рис. 4б).
Пример 7. Линии между строк
Вид соединения | Поля допусков ширины шпоночного паза | |
---|---|---|
Вал | Втулка | |
Свободное | H9 | D10 |
Нормальное | N9 | Is9 |
Плотное | P9 |
Результат данного примера показан на рис. 5.
Рис. 5. Таблица с горизонтальными линиями
Выравнивание текста в ячейках
По умолчанию текст в ячейке таблицы выравнивается по левому краю и по центру высоты. Исключением служит элемент , он определяет ячейку заголовка, в котором выравнивание происходит по центру. Чтобы изменить способ выравнивания применяется стилевое свойство text-align (пример 8).
Пример 8. Выравнивание содержимого ячеек по горизонтали
Заголовок 1 | Ячейка 1 | Ячейка 2 |
---|---|---|
Заголовок 2 | Ячейка 3 | Ячейка 4 |
Рис. 6. Выравнивание текста в ячейках
Выравнивание по вертикали в ячейке всегда происходит по её центру, если это не оговорено особо. Это не всегда удобно, особенно для таблиц, у которых содержимое ячеек различается по высоте. В таком случае выравнивание устанавливают по верхнему краю ячейки с помощью свойства vertical-align со значением top , как показано в примере 9.
Пример 9. Выравнивание содержимого ячеек по вертикали
Вид соединения | Поля допусков ширины шпоночного паза | |
---|---|---|
Вал | Втулка | |
Свободное | H9 | D10 |
Нормальное | N9 | Is9 |
Плотное | P9 |
В данном примере выравнивание текста происходит по верхнему краю. Результат примера показан на рис. 7.
Рис. 7. Выравнивание текста в ячейках
См. также
51 Stylised CSS Tables
Then check this list of CSS tables, they are responsive too.
You may also like
- 75 CSS Text Animations You Can Use
- 15 Amazing CSS Animated Background for you to try
- 57 Beautiful CSS Cards examples to improve your UI
- 19 Cool CSS Loading Animation to inspire you
- 17 Fancy CSS Search Boxes
- 21 Modern CSS menu examples
- 19 Stylish CSS forms
- 23 Fantastic CSS Hover Effects
- 19 CSS Border Animations you can implement
- 13 Pure CSS Dropdown Menus
- 15 Creative CSS Filter Examples
- 35 Unique CSS Text Effects
- 15 CSS Sliders you can use
- 21 New Bootstrap Login Forms for you
- 19 Bootstrap Profiles you can use for yourself
- 13 Material Design Login Forms
- 35 Cool CSS Select Boxes
- 15 CSS Range Sliders you can use today
- 35 Creative use of CSS clip-path examples
- 29 Unique CSS Toggle Switches
- 41 Beautiful CSS Animation Examples
Pure CSS Responsive Accordion Table
Dev: Anthony Collurafici
See the Pen CSS table by Andrew Lohman (@ajlohman) on CodePen.
Dev: Andrew Lohman
Fixed table header
Dev: Nikhil Krishnan
Simple Responsive Table in CSS
Dev: Matt Smith
See the Pen Data Table by alassetter (@alassetter) on CodePen.
Dev: alassetter
CSS Responsive Table Layout
Dev: Luke Peters
Responsive
See the Pen Responsive by Pablo García (@pablorgarcia) on CodePen.
Dev: Pablo García
Responstable 2.0: a responsive table solution
Dev: Jordy van Raaij
Responsive Table
Dev: Geoff Yuen
Responsive Table
Dev: Iván Villamil
Responsive Table
No Javascript Table with Pagination
Dev: Takane Ichinose
Responsive Table HTML and CSS Only
Dev: Flor Antara
Pure CSS Table Highlight (vertical & horizontal)
Dev: Alexander Erlandsson
Responsive table with flexbox
HTML Table & CSS Table
Dev: Ahmad Awais
MODERN TABLE CSS (FLAT DESIGN)
Dev: Vikas Chauhan
Pure CSS Table Column Hover
Dev: Dave Santos
Fade and Blur on Hover Data Table
Dev: Jack Rugile
Zigzag Table
Dev: Chris Smith
Table with frozen table header and left column
Dev: Estelle Weyl
Sort Table Rows by Table Headers – Ascending and Descending (jQuery)
Dev: Nathan Cockerill
Data Table with Collapsible Table Rows
Dev: Andor Nagy
Responsive & Accessible Data Table
Dev: Charlie Cathcart
CSS only Responsive Tables
Dev: David Bushell
Responsive Tables using LI
Dev: Faiz Ahmed
Sticky Table Headers by position: sticky;
Dev: Wolf Wortmann
Responsive Table with RWD-Table-Patterns
Dev: SitePoint
Responsive Table + Detail View
Dev: Heather Buchel
CSS Grid: Periodic Table
Dev: Olivia Ng
Animated Periodic Table
Dev: Dilum Sanjaya
Responsive Periodic Table with CSS Grids
Dev: Dilum Sanjaya
CSS Periodic Table
Dev: Alma Madsen
The Periodic Table Of Elements
Dev: Brady Sammons
Periodic table
Dev: Kitty Giraudel
Periodic Table of the Elements
Dev: Adrian Roselli
Periodic Table (click an element)
Dev: Loïc Monard
Crisp table
See the Pen Crisp table by charlie hield (@stursby) on CodePen.
Dev: charlie hield
CSS3 pricing table
Pricing table
Dev: Chris Frees
Bootstrap Pricing Table
Dev: Sahar Ali Raza
Pricing Table
See the Pen Pricing Table by Travis Williamson (@travisw) on CodePen.
Dev: Travis Williamson
Pricing Table
See the Pen Pricing Table by Aladin Bensassi (@Eliteware) on CodePen.
Dev: Aladin Bensassi
Flat Pricing table
Dev: Vivek kumar
Flat Pricing table
Dev: Andy Tran
RESPONSIVE PRICING TABLE DESIGN
Dev: Digimad Media
Pricing Table
Dev: Daniel Riemer
Pricing Table
See the Pen Pricing Tables by Joseph Victory (@j-w-v) on CodePen.
Dev: Joseph Victory
Responsive Flip Pricing Table
Dev: Shane Heyns
Adaptive Pricing Table
Pricing table ui
See the Pen pricing table ui by jamal hassonui (@devjamal) on CodePen.
Dev: jamal hassonui
43 CSS Tables
Collection of free HTML and CSS table code examples: simple, responsive, pricing, periodic, etc. Update of May 2020 collection. 6 new item.
Table of Contents:
Related Articles
Tables
Author
Links
Made with
About a code
Zigzag Table
A table formatted in a zigzag diagonal layout.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Table with Pagination
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Table with Frozen Table Header and Left Column
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About the code
Sort Table Rows By Table Headers
Sort table rows by table headers — ascending and descending.
Author
Links
Made with
About the code
Responsive Tables Using li
Author
Links
Made with
About the code
Responsive Table HTML and CSS Only
HTML table made responsive only with CSS. On mobile the header row is fixed to the left, and the content is scrollable horizontally.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Responsive Table With Flexbox
The idea was to create a nice working table which is working on smaller screens also.
Made by Matys
April 6, 2017
CSS Responsive Table Layout
Using CSS for responsive table layouts instead of floats. Responsive (everything goes down to one row each), too.
Made by Luke Peters
February 21, 2017
Fixed Table Header
Fixed table header with simple jQuery code.
Made by Nikhil Krishnan
November 3, 2016
Responsive Table
CSS tricks method responsive table.
Made by Alico
April 11, 2016
Pure CSS Table Highlight
A simple (and nasty) trick to have vertical and horizontal highlight on hover on tables made with pure CSS.
Made by Alexander Erlandsson
March 22, 2016
Author
Links
Made with
About the code
Sticky Table Headers by position: sticky;
Trying out to make a sweet table with sticky table headers if their table is in the viewport (like the iOS names list names beginning capital letter).
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Responsive Table
Responsive table with rwd-table-patterns.
Made by SitePoint
April 15, 2015
CSS Responsive Table & Detail View
An example table and detail view scenario.
Made by Heather Buchel
June 29, 2014
Author
Links
Made with
About a code
CSS Table
Using CSS to fade-in a row, fade-out a row and show data in the table updating on a live basis. Also hovering over a row expands to show more information.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Responsive Table
Table collapses into a «list» on small screens. Headers are pulled from data attributes.
Made by Geoff Yuen
March 25, 2014