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.

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 classes 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:

Source code

If you did not find the information in this page, consider having a look at the implementation of the component for more detail.