Back to compare picker

Master-detail vs Details panel vs List view vs Window splitter

Use master-detail for an adaptive list and detail navigation layout; use details panel for adjacent selected-object inspection, list view for the source list alone, and window splitter for user-controlled pane resizing.

Learn the decision

Match the interaction to the person's task

Use master-detail for an adaptive list and detail navigation layout; use details panel for adjacent selected-object inspection, list view for the source list alone, and window splitter for user-controlled pane resizing.

Master-detail

Use it when: Users repeatedly choose items from a collection and work with a substantial detail destination.

Make this state clear: Wide default state with master list, selected item, and detail pane visible together.

Observe the result: A user selects a case, scrolls its detail history, narrows the window to stacked mode, goes back to the case list, selects another case, and widening the window shows the new selected case beside the list.

Study the full pattern →

Details panel

Use it when: Users repeatedly inspect selected records, tickets, alerts, files, assets, tasks, comments, or locations while staying in a work surface.

Make this state clear: Selected-object state with source item highlighted and panel title naming the same object.

Observe the result: A keyboard user moves down a ticket list, the highlighted row and details panel update together, and focus remains in the list until the user chooses Open full ticket.

Study the full pattern →

List view

Use it when: Users need to scan and act on a collection of objects using compact summaries.

Make this state clear: Default list state with label or heading, row count or context, visible row summaries, and primary row identity.

Observe the result: A user filters tickets to Critical, selects two rows, opens the details panel for one ticket, then clears the filter and the selected count and active ticket remain understandable.

Study the full pattern →

Window splitter

Use it when: Users need to compare, edit, inspect, or preview adjacent panes in one durable workspace.

Make this state clear: Default split state with two labelled panes and a visible splitter position.

Observe the result: A keyboard user focuses the separator, presses Right Arrow to widen the preview by 5 percent, presses Home to return to the minimum source pane, and focus remains on the splitter.

Study the full pattern →

Practice the judgment: Imagine this situation: The side-by-side layout changes selection but leaves the old item loaded in the detail pane. Write the person's goal, choose one of these patterns, and show the state that helps the person continue. Use the decision rules and source trail below to explain your choice.

Review the underlying principle →

Decision dimensions

Dimension Master-detailDetails panelList viewWindow splitter
UI or UX UI + UX - Adaptive source list and detail layout with coordinated selection and navigation stateUI + UX - Persistent selected-object inspection panelUI + UX - Vertical object-summary browsing surfaceUI + UX - Moveable separator for resizing adjacent panes
UI guidance Adapt the same content relationship between side-by-side panes on wider screens and stacked list/detail navigation on narrower screens, with visible Back to list or equivalent return control in stacked mode.Render a details panel as a persistent side or adjacent region that names the currently selected object, shows high-value metadata, status, and local secondary actions, and keeps the object selection visible in the source list, table, map, board, or feed.Render a labelled vertical list where each row has a strong primary label, concise supporting text, metadata, status, optional leading media, and row-scoped actions with clear hit targets.Render a window splitter as a visible, focusable moveable separator between adjacent panes with a clear resize affordance, accessible name, orientation, current value, minimum and maximum pane limits, and preserved pane headings.
UX guidance Use master-detail when users move repeatedly between a collection of items and full detail content, and the detail can act as a navigable destination rather than only a small inspector.Use a details panel when users need to select and compare nearby objects while keeping a durable inspection area visible, such as reviewing records, tickets, assets, alerts, comments, files, or map locations.Use list view when scanning and opening object summaries is faster than comparing columns or inspecting large visual cards.Help the person reach a clear task outcome.
Good UI An inbox shows conversations in the left pane and the selected message thread in the right pane on desktop, then shows either the conversation list or selected thread with Back to inbox on phone.A ticket queue keeps TCK-2048 selected in the list and shows a right details panel with requester, severity, SLA, owner, activity, and Open full ticket.A ticket list row shows TCK-2048 Database backup failed, a one-line incident summary, Critical status, owner, updated time, selected state, and a labelled More actions menu.A mail workspace has a message list and reading pane separated by a labelled vertical splitter showing 42 percent list width, with arrow-key resizing and restore from collapse.
Bad UI Selecting an order highlights one list item while the detail pane still shows a previous order.A panel titled Details shows metrics from the previously selected record after the list selection changes.Every row has five unlabeled icon buttons, and the whole row also navigates.Panes resize below readable width or height and hide critical controls.
Good UX A user selects a case, scrolls its detail history, narrows the window to stacked mode, goes back to the case list, selects another case, and widening the window shows the new selected case beside the list.A keyboard user moves down a ticket list, the highlighted row and details panel update together, and focus remains in the list until the user chooses Open full ticket.A user filters tickets to Critical, selects two rows, opens the details panel for one ticket, then clears the filter and the selected count and active ticket remain understandable.A keyboard user focuses the separator, presses Right Arrow to widen the preview by 5 percent, presses Home to return to the minimum source pane, and focus remains on the splitter.
Bad UX A user rotates a tablet and the app resets to the first list item, discarding the detail draft and scroll position.Sorting the list silently clears the highlighted row while the panel continues to show an old ticket.A user tries to preview a file but the row click opens navigation while the small trailing icon deletes the file.A user drags the divider and the selected record disappears because the source pane collapses below its minimum usable width.
Best fit Users repeatedly choose items from a collection and work with a substantial detail destination.Users repeatedly inspect selected records, tickets, alerts, files, assets, tasks, comments, or locations while staying in a work surface.Users need to scan and act on a collection of objects using compact summaries.Users need to compare, edit, inspect, or preview adjacent panes in one durable workspace.
Avoid when The detail is only a short metadata summary.The content is just a short temporary preview before navigation.Users need to compare many records across shared attributes.The divider is only decorative or structural.
Required state Wide default state with master list, selected item, and detail pane visible together.Selected-object state with source item highlighted and panel title naming the same object.Default list state with label or heading, row count or context, visible row summaries, and primary row identity.Default split state with two labelled panes and a visible splitter position.
Accessibility burden Name the master and detail regions with headings that describe the collection and the selected item.Name the panel region from the selected object's title or a heading that includes the object identity.Use semantic list markup for ordinary object lists; use listbox only when rows are options in a single control.Use role separator for a focusable moveable splitter and give it an accessible name that identifies the panes it separates.
Common misuse Forgetting the stacked mobile return path from detail back to the master list.Keeping the previous ticket summary in the persistent panel after the highlighted row has moved to a different ticket.Putting too many independent controls in every row until the list becomes a keyboard trap.Using a static separator line and calling it a splitter.

Master-detail

UI or UX
UI + UX - Adaptive source list and detail layout with coordinated selection and navigation state
UI guidance
Adapt the same content relationship between side-by-side panes on wider screens and stacked list/detail navigation on narrower screens, with visible Back to list or equivalent return control in stacked mode.
UX guidance
Use master-detail when users move repeatedly between a collection of items and full detail content, and the detail can act as a navigable destination rather than only a small inspector.
Good UI
An inbox shows conversations in the left pane and the selected message thread in the right pane on desktop, then shows either the conversation list or selected thread with Back to inbox on phone.
Bad UI
Selecting an order highlights one list item while the detail pane still shows a previous order.
Good UX
A user selects a case, scrolls its detail history, narrows the window to stacked mode, goes back to the case list, selects another case, and widening the window shows the new selected case beside the list.
Bad UX
A user rotates a tablet and the app resets to the first list item, discarding the detail draft and scroll position.
Best fit
Users repeatedly choose items from a collection and work with a substantial detail destination.
Avoid when
The detail is only a short metadata summary.
Required state
Wide default state with master list, selected item, and detail pane visible together.
Accessibility burden
Name the master and detail regions with headings that describe the collection and the selected item.
Common misuse
Forgetting the stacked mobile return path from detail back to the master list.

Details panel

UI or UX
UI + UX - Persistent selected-object inspection panel
UI guidance
Render a details panel as a persistent side or adjacent region that names the currently selected object, shows high-value metadata, status, and local secondary actions, and keeps the object selection visible in the source list, table, map, board, or feed.
UX guidance
Use a details panel when users need to select and compare nearby objects while keeping a durable inspection area visible, such as reviewing records, tickets, assets, alerts, comments, files, or map locations.
Good UI
A ticket queue keeps TCK-2048 selected in the list and shows a right details panel with requester, severity, SLA, owner, activity, and Open full ticket.
Bad UI
A panel titled Details shows metrics from the previously selected record after the list selection changes.
Good UX
A keyboard user moves down a ticket list, the highlighted row and details panel update together, and focus remains in the list until the user chooses Open full ticket.
Bad UX
Sorting the list silently clears the highlighted row while the panel continues to show an old ticket.
Best fit
Users repeatedly inspect selected records, tickets, alerts, files, assets, tasks, comments, or locations while staying in a work surface.
Avoid when
The content is just a short temporary preview before navigation.
Required state
Selected-object state with source item highlighted and panel title naming the same object.
Accessibility burden
Name the panel region from the selected object's title or a heading that includes the object identity.
Common misuse
Keeping the previous ticket summary in the persistent panel after the highlighted row has moved to a different ticket.

List view

UI or UX
UI + UX - Vertical object-summary browsing surface
UI guidance
Render a labelled vertical list where each row has a strong primary label, concise supporting text, metadata, status, optional leading media, and row-scoped actions with clear hit targets.
UX guidance
Use list view when scanning and opening object summaries is faster than comparing columns or inspecting large visual cards.
Good UI
A ticket list row shows TCK-2048 Database backup failed, a one-line incident summary, Critical status, owner, updated time, selected state, and a labelled More actions menu.
Bad UI
Every row has five unlabeled icon buttons, and the whole row also navigates.
Good UX
A user filters tickets to Critical, selects two rows, opens the details panel for one ticket, then clears the filter and the selected count and active ticket remain understandable.
Bad UX
A user tries to preview a file but the row click opens navigation while the small trailing icon deletes the file.
Best fit
Users need to scan and act on a collection of objects using compact summaries.
Avoid when
Users need to compare many records across shared attributes.
Required state
Default list state with label or heading, row count or context, visible row summaries, and primary row identity.
Accessibility burden
Use semantic list markup for ordinary object lists; use listbox only when rows are options in a single control.
Common misuse
Putting too many independent controls in every row until the list becomes a keyboard trap.

Window splitter

UI or UX
UI + UX - Moveable separator for resizing adjacent panes
UI guidance
Render a window splitter as a visible, focusable moveable separator between adjacent panes with a clear resize affordance, accessible name, orientation, current value, minimum and maximum pane limits, and preserved pane headings.
UX guidance
Help the person reach a clear task outcome.
Good UI
A mail workspace has a message list and reading pane separated by a labelled vertical splitter showing 42 percent list width, with arrow-key resizing and restore from collapse.
Bad UI
Panes resize below readable width or height and hide critical controls.
Good UX
A keyboard user focuses the separator, presses Right Arrow to widen the preview by 5 percent, presses Home to return to the minimum source pane, and focus remains on the splitter.
Bad UX
A user drags the divider and the selected record disappears because the source pane collapses below its minimum usable width.
Best fit
Users need to compare, edit, inspect, or preview adjacent panes in one durable workspace.
Avoid when
The divider is only decorative or structural.
Required state
Default split state with two labelled panes and a visible splitter position.
Accessibility burden
Use role separator for a focusable moveable splitter and give it an accessible name that identifies the panes it separates.
Common misuse
Using a static separator line and calling it a splitter.
Decision rules
  • Choose master-detail when a list item opens or selects a full detail experience and the layout must adapt between side-by-side panes and stacked list/detail navigation.
  • Choose details panel when users stay in one workspace and need a persistent adjacent inspector for concise selected-object metadata rather than a full detail route.
  • Choose list view when the product only needs a scannable list of object rows and selection does not own a coordinated detail pane or detail navigation state.
  • Choose window splitter when the main problem is letting users resize adjacent panes; splitter behavior does not by itself define the list-detail ownership model.
  • Master-detail should preserve the selected item, detail scroll or edit state, and back path as the viewport changes between stacked and side-by-side layouts.
  • Master-detail should show an explicit empty or placeholder detail pane on wide screens when no item is selected, instead of displaying stale detail.
  • Do not use master-detail for row-local disclosure; expandable row or tree grid is more accurate when the detail belongs inside the source row.
  • Do not use master-detail when the detail is a temporary overlay with close behavior; drawer or sheet is more accurate for that lifecycle.
  • Use details panel or preview panel when detail content is short, inspection-oriented, and should not become its own navigable page.
  • Use table or data grid instead when users mainly compare repeated values across rows and do not need a coordinated detail destination.
Inspect live examples
Failure modes
  • A narrow layout opens detail with no Back to list path, trapping users away from the master list.
  • The side-by-side layout changes selection but leaves the old item loaded in the detail pane.
  • A stacked layout loses the selected item and detail scroll state when the viewport widens.
  • The product calls a small right inspector master-detail even though the detail cannot stand as a navigable page.
  • A splitter is added between panes but selection, empty detail, and stacked navigation behavior remain undefined.
  • The detail pane starts with unrelated content instead of an empty prompt when no list item is selected.

Saved items