Skip to content

TableCell API

API reference docs for the React TableCell component. Learn about the props, CSS, and other APIs of this exported module.

Component demos

Import

import TableCell from '@mui/material/TableCell';
// or
import { TableCell } from '@mui/material';
Learn about the difference by reading this guide on minimizing bundle size.

The component renders a <th> element when the parent context is a header or otherwise a <td> element.

Props

Props of the native component are also available.

align

Set the text-align on the table cell content.
Monetary or generally number fields should be right aligned as that allows you to add them up quickly in your head without having to worry about decimals.

Type:'center'
| 'inherit'
| 'justify'
| 'left'
| 'right'

Default:'inherit'


children

The content of the component.

Type:node


classes

Override or extend the styles applied to the component.

See CSS API below for more details.

Type:object


component

The component used for the root node. Either a string to use a HTML element or a component.

Type:elementType


padding

Sets the padding applied to the cell. The prop defaults to the value ('default') inherited from the parent Table component.

Type:'checkbox'
| 'none'
| 'normal'


scope

Set scope attribute.

Type:string


size

Specify the size of the cell. The prop defaults to the value ('medium') inherited from the parent Table component.

Type:'medium'
| 'small'
| string


sortDirection

Set aria-sort direction.

Type:'asc'
| 'desc'
| false


sx

The system prop that allows defining system overrides as well as additional CSS styles.

See the `sx` page for more details.

Type:Array<func
| object
| bool>
| func
| object


variant

Specify the cell type. The prop defaults to the value inherited from the parent TableHead, TableBody, or TableFooter components.

Type:'body'
| 'footer'
| 'head'
| string


The ref is forwarded to the root element.

Theme default props

You can use MuiTableCell to change the default props of this component with the theme.


CSS classes

These class names are useful for styling with CSS. They are applied to the component's slots when specific states are triggered.

.MuiTableCell-alignCenter

Styles applied to the root element if align="center".

Rule name:alignCenter


.MuiTableCell-alignJustify

Styles applied to the root element if align="justify".

Rule name:alignJustify


.MuiTableCell-alignLeft

Styles applied to the root element if align="left".

Rule name:alignLeft


.MuiTableCell-alignRight

Styles applied to the root element if align="right".

Rule name:alignRight


.MuiTableCell-body

Styles applied to the root element if variant="body" or context.table.body.

Rule name:body


.MuiTableCell-head

Styles applied to the root element if variant="head" or context.table.head.

Rule name:head


.MuiTableCell-paddingCheckbox

Styles applied to the root element if padding="checkbox".

Rule name:paddingCheckbox


.MuiTableCell-paddingNone

Styles applied to the root element if padding="none".

Rule name:paddingNone


.MuiTableCell-root

Styles applied to the root element.

Rule name:root


.MuiTableCell-sizeMedium

Styles applied to the root element if size="medium".

Rule name:sizeMedium


.MuiTableCell-sizeSmall

Styles applied to the root element if size="small".

Rule name:sizeSmall


.MuiTableCell-stickyHeader

Styles applied to the root element if context.table.stickyHeader={true}.

Rule name:stickyHeader



You can override the style of the component using one of these customization options: