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

Blazor

Angular

React

VueJS


Feedback

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