logoAnt Design

⌘ K
  • Design
  • Development
  • Components
  • Blog
  • Resources
5.25.4
  • Ant Design
    • Introduction
    • Design Values
    • Cases
  • Global Styles
    • Colors
    • Layout
    • Font
    • Icons
    • Dark Mode
    • Shadow
  • Design Patterns
    • Overview
    • Global Rules
      • Feedback
      • Navigation
      • Data Entry
      • Data Display
      • Copywriting
      • Data format
      • Button
      • Data List
    • Principles
      • Proximity
      • Alignment
      • Contrast
      • Repetition
      • Make it Direct
      • Stay on the Page
      • Keep it Lightweight
      • Provide an Invitation
      • Use Transition
      • React Immediately
    • Template Document
      • Visualization Page
      • Detail Page
  • Design Patterns (Research)
    • Overview
    • Template Document
      • Form Page
      • Workbench
      • List Page
      • Result Page
      • Exception Page
    • Global Rules
      • Navigation
      • Message and Feedback
      • Empty Status
  • Visualization
  • Motion
  • Illustrations
Design Principal
Types
Common Button Types
Emphasis
Do & Don't
Special Button Types
Placement
How to Decide Button Placement?
When to Put Buttons in the Footer?
Ordering
Button Ordering
Button Group
Grouping Buttons
Label

Button

contributors
  • Data formatData List

    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

    Design Principal

    • Guide users to achieve the desired actions.
    • Prevent user to make mistakes.

    Types

    Common Button Types

    buttons

    ① Default Button

    Default buttons are used for non-primary actions. If not sure which button type to choose from, the default button is always a safe bet.

    ② Primary Button

    Emphasize on "complete" or "recommend" action. There is at most one primary button per a button group.

    ③ Text Button

    Low emphasis and light-weight button type, such as actions in a table.

    ④ Icon Button

    Icon provides a visual clue.

    • It could fit more buttons in a small space.
    • Buttons with icon only need to provide Tooltip to indicate the meaning of the button.

    ⑤ Text Button with Icon

    Provides supplementary meaning to the button.

    Emphasis

    Preview

    Common button types could be used to showcase to different emphasis.

    Do & Don't

    Don't
    Preview
    Don't
    Don't put more than 1 primary button in the same group.
    Do
    Preview
    Do
    1. Emphasize on the primary action.
    2. If there is no primary action, then default buttons is the safest choice.
    Don't
    Preview
    Don't
    Put 2 icons in the same button.
    Do
    Preview
    Do
    1. Should place the buttons in the order of importance.
    2. The less important actions should be place on right or at bottom.
    Do
    Preview
    Do
    1. Emphasize on the primary action.
    2. If there is no primary action, then default buttons is the safest choice.

    Special Button Types

    Dashed Button

    Preview

    Guide users to add content in an area.

    Danger Button

    Preview
    Do
    Preview
    Do
    If user's intention is to delete, use danger button to warn this action has risks.
    Do
    Preview
    Do
    When system does not recommend the deletion action, we could set 'Cancel' as the primary action.

    Warns users that there are risks involved in the action.

    Ghost Button

    Used in the dark or colored background.

    Preview

    Call to Action

    Preview

    Usually appeared alone and intend to used as a command. For example, it is used in the landing page or welcome banner. It could be as wide as its parent container. It is recommended to have just 1 "Call to Action" button in 1 screen.

    Placement

    Preview

    Place buttons in the users' reading pattern for the ease of discovery, such as the "F-Shaped Reading Pattern" and "Z-Shaped Reading Pattern".

    How to Decide Button Placement?

    Page/Card/Section presents a subject, where it could be broken into 3 areas:

    Preview
    • Header: subject's heading, summary and navigation
    • Body: detailed content
    • Footer: supplementary information or toolbar

    Place buttons in different areas could have different meanings.

    When to Put Buttons in the Footer?

    Preview
    • Body section has collapsed or hidden content, such as it could not show the entire content in one screen;
    • Body section has complex content. For example, it has multiple subgroups and each subgroup has its own actions. Now it is needed to separate "Complete" action from body section to avoid confusion.

    In short, footer's purpose is to have a separation from body.

    Ordering

    Button Ordering

    Preview

    Recommend to start from the reading flow, collapsed content should always be on the right.

    How to Decide Button Ordering

    • Conversation Flow: place buttons in the order similar to a conversation between computers and users. Ask users the needed actions or your desired actions, then present the risks involved.
    • Navigation Flow: for example, if a button represents going back, should be placed on the left implying it is going to the previous step.

    Button Group

    Do
    Preview
    Do
    Don't
    Preview
    Don't
    When button group has no space in between, it is easy to confuse it with Toggle Button.

    When multiple buttons form a group, align buttons in one line with spaces in between.

    Grouping Buttons

    When there are too many buttons on the screen, we could group relevant buttons together and use similar design for that group. If one of the buttons is primary action, we could still use emphasis.

    Preview

    Collapse buttons in the order of importance


    Do
    Preview
    Do
    Don't
    Preview
    Don't
    If buttons are in the same group, no need to add dividers between them.

    Flat display of all the buttons: could separate different groups using space; or use divider to group similar buttons.

    Label

    Do
    Preview
    Do
    Don't
    Preview
    Don't
    Should use verb

    Labels should clearly indicate to users what would happen when buttons got clicked.

    • Should use verb (except dropdown buttons)
    • Should be relevant to the context and be concise.

    Ant Design use "OK / Cancel" as default label, but you could still use below methods to customize the label text:

    • Describe the action result.

      Publish, Login, Register.

    • If primary action means negative, stress the consequences.

      Are you sure to delete it? Delete / Cancel