empty-cells

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The empty-cells CSS property sets whether borders and backgrounds appear around <table> cells that have no visible content.

Try it

This property has an effect only when the border-collapse property is separate.

Syntax

css
/* Keyword values */
empty-cells: show;
empty-cells: hide;

/* Global values */
empty-cells: inherit;
empty-cells: initial;
empty-cells: revert;
empty-cells: revert-layer;
empty-cells: unset;

The empty-cells property is specified as one of the keyword values listed below.

Values

show

Borders and backgrounds are drawn like in normal cells.

hide

No borders or backgrounds are drawn.

Formal definition

Initial valueshow
Applies totable-cell elements
Inheritedyes
Computed valueas specified
Animation typediscrete

Formal syntax

empty-cells = 
show |
hide

Examples

Showing and hiding empty table cells

HTML

html
<table class="table_1">
  <tr>
    <td>Moe</td>
    <td>Larry</td>
  </tr>
  <tr>
    <td>Curly</td>
    <td></td>
  </tr>
</table>
<br />
<table class="table_2">
  <tr>
    <td>Moe</td>
    <td>Larry</td>
  </tr>
  <tr>
    <td>Curly</td>
    <td></td>
  </tr>
</table>

CSS

css
.table_1 {
  empty-cells: show;
}

.table_2 {
  empty-cells: hide;
}

td,
th {
  border: 1px solid gray;
  padding: 0.5rem;
}

Result

Specifications

Specification
Cascading Style Sheets Level 2 Revision 2 (CSS 2.2) Specification
# empty-cells

Browser compatibility

BCD tables only load in the browser

See also