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.

NameTypeDefaultDescription
align'center'
| 'inherit'
| 'justify'
| 'left'
| 'right'
'inherit'

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.

childrennode

The content of the component.

classesobject

Override or extend the styles applied to the component.

See CSS API below for more details.

componentelementType

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

padding'checkbox'
| 'none'
| 'normal'

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

scopestring

Set scope attribute.

size'medium'
| 'small'
| string

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

sortDirection'asc'
| 'desc'
| false

Set aria-sort direction.

sxArray<func
| object
| bool>
| func
| object

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

See the `sx` page for more details.

variant'body'
| 'footer'
| 'head'
| string

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

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.

Class nameRule nameDescription
.MuiTableCell-alignCenteralignCenterStyles applied to the root element if align="center".
.MuiTableCell-alignJustifyalignJustifyStyles applied to the root element if align="justify".
.MuiTableCell-alignLeftalignLeftStyles applied to the root element if align="left".
.MuiTableCell-alignRightalignRightStyles applied to the root element if align="right".
.MuiTableCell-bodybodyStyles applied to the root element if variant="body" or context.table.body.
.MuiTableCell-headheadStyles applied to the root element if variant="head" or context.table.head.
.MuiTableCell-paddingCheckboxpaddingCheckboxStyles applied to the root element if padding="checkbox".
.MuiTableCell-paddingNonepaddingNoneStyles applied to the root element if padding="none".
.MuiTableCell-rootrootStyles applied to the root element.
.MuiTableCell-sizeMediumsizeMediumStyles applied to the root element if size="medium".
.MuiTableCell-sizeSmallsizeSmallStyles applied to the root element if size="small".
.MuiTableCell-stickyHeaderstickyHeaderStyles applied to the root element if context.table.stickyHeader={true}.

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