- Web Developer's Reference Guide
- Joshua Johanan Talha Khan Ricardo Zea
- 430字
- 2021-07-09 20:18:26
Tables
Tables, tables, tables! Together with images, HTML tables are the black sheep of web design.
Regardless of being the black sheep, the power of tables is amazing. And if there's an HTML element that does its job well, very well, it's tables.
Let's dig in.
table-layout
The table-layout
CSS property allows us to define the how HTML tables are laid out on the document, and it looks like this:
table-layout: fixed;
Description
There are two keyword values: auto
and fixed
.
auto
: This is the default value. Tables are automatically laid out by the browser this way without declaring anything in the CSS. The table cells adapt to the content inside of them; the behavior of table can sometimes be unpredictable.fixed
: By declaring the width of the table cells from the first row, the rendering of the entire table can be actually faster; anything we do to improve performance is big win for everyone.
Since the table cells have a fixed width, depending on the data in the cells, some information can overflow the cells. Using a combination of the overflow
properties and text-overflow: ellipsis;
we can fix the issue.
CSS:
table { table-layout: fixed; }
border-collapse
The border-collapse
CSS property tells the table cells to stay separated or get close together (collapse), and it looks like this:
border-collapse: collapse;
Description
This property supports two keyword values: separate
and collapse
.
separate
: This is the default value. There is a space between the table cells, and each cell has its own border.collapse
: This value brings the cells together, thus the space is lost and the cells share borders.
CSS:
table { border-collapse: collapse; }
border-spacing
The border-spacing
CSS property creates a space between the table cells, and it looks like this:
border-spacing: 10px;
Description
The border-spacing
property only works when the border-collapse: separate;
declaration is present.
CSS:
table {
border-collapse: separate;
border-spacing: 10px;
}
empty-cells
The empty-cells
CSS property allows us to define how browsers should render borders and backgrounds on cells that have no content in them, and it looks like this:
empty-cells: hide;
Description
The empty-cells
property supports two keyword values: show
and hide
, which determine whether the borders and background should, or should not, be rendered.
CSS:
table { empty-cells: hide; }
caption-side
The caption-side
CSS property defines the location of the table caption, and it looks like this:
caption-side: bottom;
Description
It supports two keyword values: top
and bottom
.
In CSS 2, other keyword values, such as left
and right
, were supported, but they were dropped in CSS 2.1.
CSS:
caption { caption-side: bottom; }
- Learning Scala Programming
- Redis Applied Design Patterns
- FreeSWITCH 1.6 Cookbook
- Unity Shader入門精要
- Data Analysis with Stata
- Haxe Game Development Essentials
- 飛槳PaddlePaddle深度學習實戰(zhàn)
- Python算法指南:程序員經(jīng)典算法分析與實現(xiàn)
- 西門子S7-200 SMART PLC編程從入門到實踐
- Test-Driven Machine Learning
- 一步一步跟我學Scratch3.0案例
- Python+Office:輕松實現(xiàn)Python辦公自動化
- Drupal 8 Development:Beginner's Guide(Second Edition)
- Flink核心技術(shù):源碼剖析與特性開發(fā)
- Mastering Object:Oriented Python(Second Edition)