ProComponents, templates & AI tooling
HeroUI
27.7k

CloseButton

Button component for closing dialogs, modals, or dismissing content

Usage

import { CloseButton } from "@heroui/react";

Examples

Interactive

With Custom Icon

Customization

Tailwind CSS

Global CSS

To customize the CloseButton component classes, you can use the @layer components directive. Learn more.

@layer components {
  .close-button {
    @apply bg-red-100 text-red-800 hover:bg-red-200;
  }

  .close-button--custom {
    @apply rounded-full border-2 border-red-300;
  }
}

Styling Reference

HeroUI follows the BEM methodology to ensure component variants and states are reusable and easy to customize.

CSS Classes

The CloseButton component uses these CSS classes (View source styles):

Base Classes

  • .close-button - Base component styles

Variant Classes

  • .close-button--default - Default variant

Interactive States

The component supports both CSS pseudo-classes and data attributes for flexibility:

  • Hover: :hover or [data-hovered="true"]
  • Active/Pressed: :active or [data-pressed="true"]
  • Focus: :focus-visible or [data-focus-visible="true"]
  • Disabled: :disabled or [aria-disabled="true"]

API Reference

CloseButton

PropTypeDefaultDescription
variant"default""default"Visual variant of the button
childrenReactNode | function<CloseIcon />Content to display (defaults to close icon)
onPress() => void-Handler called when the button is pressed
isDisabledbooleanfalseWhether the button is disabled

React Aria Button Props

CloseButton extends all React Aria Button props. Common props include:

PropTypeDescription
aria-labelstringAccessible label for screen readers
aria-labelledbystringID of element that labels the button
aria-describedbystringID of element that describes the button

Render Props

When using the render prop pattern, these values are provided:

PropTypeDescription
isHoveredbooleanWhether the button is hovered
isPressedbooleanWhether the button is pressed
isFocusedbooleanWhether the button is focused
isDisabledbooleanWhether the button is disabled

On this page