logoAnt Design

⌘ K
  • Design
  • Development
  • Components
  • Blog
  • Resources
5.26.0
  • Components Overview
  • General
    • Button
    • FloatButton
      5.0.0
    • Icon
    • Typography
  • Layout
    • Divider
    • Flex
      5.10.0
    • Grid
    • Layout
    • Space
    • Splitter
      5.21.0
  • Navigation
    • Anchor
    • Breadcrumb
    • Dropdown
    • Menu
    • Pagination
    • Steps
    • Tabs
  • Data Entry
    • AutoComplete
    • Cascader
    • Checkbox
    • ColorPicker
      5.5.0
    • DatePicker
    • Form
    • Input
    • InputNumber
    • Mentions
    • Radio
    • Rate
    • Select
    • Slider
    • Switch
    • TimePicker
    • Transfer
    • TreeSelect
    • Upload
  • Data Display
    • Avatar
    • Badge
    • Calendar
    • Card
    • Carousel
    • Collapse
    • Descriptions
    • Empty
    • Image
    • List
    • Popover
    • QRCode
      5.1.0
    • Segmented
    • Statistic
    • Table
    • Tag
    • Timeline
    • Tooltip
    • Tour
      5.0.0
    • Tree
  • Feedback
    • Alert
    • Drawer
    • Message
    • Modal
    • Notification
    • Popconfirm
    • Progress
    • Result
    • Skeleton
    • Spin
    • Watermark
      5.1.0
  • Other
    • Affix
    • App
      5.1.0
    • ConfigProvider
    • Util
      5.13.0
Examples
Basic
Disabled
Centered
Icon
Indicator
Slide
Extra content
Size
Position
Card type tab
Add & close tab
Customized trigger of new tab
Customized bar of tab
Draggable Tabs
API
Tabs
TabItemType
MoreProps
Design Token

Tabs

Tabs make it easy to explore and switch between different views.
Importimport { Tabs } from "antd";
Sourcecomponents/tabs
Docs
Edit this pageChangelog
contributors
  • StepsAutoComplete

    Resources

    Ant Design X
    Ant Design Charts
    Ant Design Pro
    Pro Components
    Ant Design Mobile
    Ant Design Mini
    Ant Design Web3
    Ant Design Landing-Landing Templates
    Scaffolds-Scaffold Market
    Umi-React Application Framework
    dumi-Component doc generator
    qiankun-Micro-Frontends Framework
    Ant Motion-Motion Solution
    China Mirror 🇨🇳

    Community

    Awesome Ant Design
    Medium
    Twitter
    yuque logoAnt Design in YuQue
    Ant Design in Zhihu
    Experience Cloud Blog
    seeconf logoSEE Conf-Experience Tech Conference

    Help

    GitHub
    Change Log
    FAQ
    Bug Report
    Issues
    Discussions
    StackOverflow
    SegmentFault

    Ant XTech logoMore Products

    yuque logoYuQue-Document Collaboration Platform
    AntV logoAntV-Data Visualization
    Egg logoEgg-Enterprise Node.js Framework
    Kitchen logoKitchen-Sketch Toolkit
    Galacean logoGalacean-Interactive Graphics Solution
    xtech logoAnt Financial Experience Tech
    Theme Editor
    Made with ❤ by
    Ant Group and Ant Design Community

    When To Use

    Ant Design has 3 types of Tabs for different situations.

    • Card Tabs: for managing too many closeable views.
    • Normal Tabs: for functional aspects of a page.
    • Radio.Button: for secondary tabs.

    Examples

    API

    Common props ref:Common props

    Tabs

    PropertyDescriptionTypeDefaultVersion
    activeKeyCurrent TabPane's keystring-
    addIconCustomize add icon, only works with type="editable-card"ReactNode<PlusOutlined />4.4.0
    animatedWhether to change tabs with animation.boolean | { inkBar: boolean, tabPane: boolean }{ inkBar: true, tabPane: false }
    centeredCenters tabsbooleanfalse4.4.0
    defaultActiveKeyInitial active TabPane's key, if activeKey is not setstringThe key of first tab
    hideAddHide plus icon or not. Only works while type="editable-card"booleanfalse
    indicatorCustomize size and align of indicator{ size?: number | (origin: number) => number; align: start | center | end; }-5.13.0
    itemsConfigure tab contentTabItemType[]4.23.0
    moreCustomize the collapse menuMoreProps{ icon: <EllipsisOutlined /> , trigger: 'hover' }
    removeIconThe custom icon of remove, only works with type="editable-card"ReactNode<CloseOutlined />5.15.0
    popupClassNameclassName for more dropdown.string-4.21.0
    renderTabBarReplace the TabBar(props: DefaultTabBarProps, DefaultTabBar: React.ComponentClass) => React.ReactElement-
    sizePreset tab bar sizelarge | middle | smallmiddle
    tabBarExtraContentExtra content in tab barReactNode | {left?: ReactNode, right?: ReactNode}-object: 4.6.0
    tabBarGutterThe gap between tabsnumber-
    tabBarStyleTab bar style objectCSSProperties-
    tabPositionPosition of tabstop | right | bottom | lefttop
    destroyInactiveTabPaneWhether destroy inactive TabPane when change tab, use destroyOnHidden insteadbooleanfalse
    destroyOnHiddenWhether destroy inactive TabPane when change tabbooleanfalse5.25.0
    typeBasic style of tabsline | card | editable-cardline
    onChangeCallback executed when active tab is changed(activeKey: string) => void-
    onEditCallback executed when tab is added or removed. Only works while type="editable-card"(action === 'add' ? event : targetKey, action) => void-
    onTabClickCallback executed when tab is clicked(key: string, event: MouseEvent) => void-
    onTabScrollTrigger when tab scroll({ direction: left | right | top | bottom }) => void-4.3.0

    More option at rc-tabs tabs

    TabItemType

    PropertyDescriptionTypeDefaultVersion
    closeIconCustomize close icon in TabPane's head. Only works while type="editable-card". 5.7.0: close button will be hidden when setting to null or falseReactNode-
    destroyInactiveTabPaneWhether destroy inactive TabPane when change tab, use destroyOnHidden insteadbooleanfalse5.11.0
    destroyOnHiddenWhether destroy inactive TabPane when change tabbooleanfalse5.25.0
    disabledSet TabPane disabledbooleanfalse
    forceRenderForced render of content in tabs, not lazy render after clicking on tabsbooleanfalse
    keyTabPane's keystring-
    labelTabPane's head display textReactNode-
    iconTabPane's head display iconReactNode-5.12.0
    childrenTabPane's head display contentReactNode-
    closableWhether a close (x) button is visible, Only works while type="editable-card"booleantrue

    MoreProps

    PropertyDescriptionTypeDefaultVersion
    iconThe custom iconReactNode-
    DropdownProps

    Design Token

    Component TokenHow to use?
    Token NameDescriptionTypeDefault Value
    cardBgBackground color of card tabstringrgba(0,0,0,0.02)
    cardGutterGutter of card tabnumber2
    cardHeightHeight of card tabnumber40
    cardHeightLGHeight of large card tabnumber48
    cardHeightSMHeight of small card tabnumber32
    cardPaddingPadding of card tabstring8px 16px
    cardPaddingLGPadding of large card tabstring11px 16px
    cardPaddingSMPadding of small card tabstring4px 8px
    horizontalItemGutterHorizontal gutter of horizontal tabnumber32
    horizontalItemMarginHorizontal margin of horizontal tab itemstring
    horizontalItemMarginRTLHorizontal margin of horizontal tab item (RTL)string
    horizontalItemPaddingHorizontal padding of horizontal tab itemstring12px 0
    horizontalItemPaddingLGHorizontal padding of large horizontal tab itemstring16px 0
    horizontalItemPaddingSMHorizontal padding of small horizontal tab itemstring8px 0
    horizontalMarginHorizontal margin of horizontal tabstring0 0 16px 0
    inkBarColorColor of indicatorstring#1677ff
    itemActiveColorText color of active tabstring#0958d9
    itemColorText color of tabstringrgba(0,0,0,0.88)
    itemHoverColorText color of hover tabstring#4096ff
    itemSelectedColorText color of selected tabstring#1677ff
    titleFontSizeFont size of titlenumber14
    titleFontSizeLGFont size of large titlenumber16
    titleFontSizeSMFont size of small titlenumber14
    verticalItemMarginVertical margin of vertical tab itemstring16px 0 0 0
    verticalItemPaddingVertical padding of vertical tab itemstring8px 24px
    zIndexPopupz-index of dropdown menunumber1050
    Global TokenHow to use?
    Basic

    Default activate first tab.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Disabled

    Disabled a tab.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Centered

    Centered tabs.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Icon

    The Tab with Icon.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Indicator

    Set indicator prop to custom indicator size and align.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Slide

    In order to fit in more tabs, they can slide left and right (or up and down).

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Extra content

    You can add extra actions to the right or left or even both side of Tabs.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Size

    Large size tabs are usually used in page header, and small size could be used in Modal.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Position

    Tab's position: left, right, top or bottom. Will auto switch to top in mobile.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Card type tab

    Another type of Tabs, which doesn't support vertical mode.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Add & close tab

    Only card type Tabs support adding & closable. +Use closable={false} to disable close.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Customized trigger of new tab

    Hide default plus icon, and bind event for customized trigger.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Customized bar of tab

    Use react-sticky-box and renderTabBar.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Draggable Tabs

    Use dnd-kit to make tabs draggable.

    CodeSandbox Icon
    codeblock
    codepen icon
    External Link Icon
    expand codeexpand code
    Tab 1
    Tab 2
    Tab 3
    Content of Tab Pane 1
    Tab 1
    Tab 2
    Tab 3
    Tab 1
    Tab 1
    Tab 2
    Tab 3
    Content of Tab Pane 1
    Tab 1
    Tab 2
    Tab 2
    Tab 1
    Tab 2
    Tab 3
    Content of Tab Pane 1
    Tab-0
    Tab-1
    Tab-2
    Tab-3
    Tab-4
    Tab-5
    Tab-6
    Tab-7
    Tab-8
    Tab-9
    Tab-10
    Tab-11
    Tab-12
    Tab-13
    Tab-14
    Tab-15
    Tab-16
    Tab-17
    Tab-18
    Tab-19
    Tab-20
    Tab-21
    Tab-22
    Tab-23
    Tab-24
    Tab-25
    Tab-26
    Tab-27
    Tab-28
    Tab-29
    Content of tab 1
    Tab 1
    Tab 2
    Tab 3
    Content of tab 1



    You can also specify its direction or both side


    Tab 1
    Tab 2
    Tab 3
    Content of tab 1
    Tab 1
    Tab 2
    Tab 3
    Content of tab 1
    Card Tab 1
    Card Tab 2
    Card Tab 3
    Content of card tab 1
    Tab 1
    Tab 2
    Tab 3
    Content of editable tab 1
    Tab position:
    Tab 1
    Tab 2
    Tab 3
    Content of Tab 1
    Tab 1
    Tab 2
    Tab 3
    Content of Tab Pane 1
    Tab 1
    Tab 2
    Tab 3
    Content of Tab 1
    Tab 1
    Tab 2
    Content of Tab Pane 1
    Tab 1
    Tab 2
    Tab 3
    Content of Tab Pane 1
    Tab 1
    Tab 2
    Tab 3
    Content of Tab Pane 1