Splitter

Allows users to resize two adjacent panels by dragging a divider between them.

Beta
Show details
Beta
Published: January 07, 2026
Updated: January 07, 2026

Overview

Splitter - overview

The Splitter component separates two panels and allows the user to resize them interactively. It supports both horizontal and vertical layouts and can optionally display a draggable handle.
It is instrumental in data-heavy or productivity interfaces where users want to control how much space each area occupies.

Key Features

  1. Two orientations: Horizontal and Vertical
  2. Resizable panels: Users can drag the splitter to adjust layout proportions
  3. Optional handle: The central handle can be shown or hidden
  4. Multiple interaction states: Default, Hover, Active
  5. Accessible by design: Large hit area and visible focus/hover feedback
  6. Layout-safe: Prevents panels from collapsing below minimum sizes

Anatomy

Splitter - anatomy
  1. Panel A: The first resizable content area
  2. Divider: The draggable separator between the two panels
  3. Handle (optional): A visual affordance indicating that the divider can be dragged
  4. Panel B: The second resizable content area
The divider always sits between Panel A and Panel B and is responsible for handling the resize interaction.

Props

Direction

Defines the orientation of the Splitter.

  • vertical — Panels are side by side (left / right)
  • horizontal — Panels are stacked (top / bottom)
Splitter - Props - direction

State

Defines the interaction state of the divider. (default | hover | active )

Splitter - Props - States

Show Handle

Controls whether the central handle is displayed.

  • true — The handle is visible
  • false — Only the divider is shown
Splitter - Props - Show handle

Themes

Splitter - Themes

Usage Guidelines

When to use

  • To let users resize two adjacent panels
  • In complex layouts (editors, dashboards, data exploration tools)
  • When both areas are important and their relative size may vary per user or per task

When not to use

  • If the layout should stay fixed
  • If one panel is rarely used (prefer a collapsible panel or a drawer instead)
  • If resizing does not bring real user value

The Figma file holds the latest UI designs, while the Web Component, Blazor, Angular, React, and VueJS links offer a live demo of components in various states, themes, and interactions.

Component checklist

Figma component

Show the component in Figma

Webcomponent

undefined

Blazor

undefined

Angular

undefined

React

undefined

VueJS

undefined


Feedback

Have feedback, an idea, or a bug to report? Head over to our Contributions page.