VaneUI

VaneUI

Reference

Common Props

Layout and typography props shared across all components.

Edit this page

Layout and utility props shared across most VaneUI components. Documented here once instead of on every component page. Per-component pages link here from the "Layout & utility props" disclosure under their props table.

Component-specific categories are listed on each component's own page because defaults differ. These include size (xs/sm/md/lg/xl), appearance (primary/accent/secondary/tertiary/success/danger/warning/info/inheritAppearance), variant (filled/outline/ghost, default outline), shape (pill/rounded/sharp, default rounded), padding (padding/paddingX/paddingY/noPadding), fontWeight, and textAlign. Default size is md, except Button, NavLink, Label, and MenuItem which default to sm. The ghost variant renders a transparent background with no border and appearance-colored text, plus a tinted hover background.

Hide

Hide elements at specific breakpoint sizes for responsive layouts.

PropDescription
mobileHideHide below 768px (48rem); the 768px boundary itself stays visible
tabletHideHide below 1024px (64rem); the 1024px boundary itself stays visible
desktopHideHide below 1280px (80rem); the 1280px boundary itself stays visible

Breakpoints are exclusive (width < the boundary). Combining several *Hide props resolves to the widest, so mobileHide tabletHide hides below 1024px.

Items

Cross-axis alignment for flex items (align-items). Controls how flex children align perpendicular to the flex direction.

PropDescription
itemsStartAlign items to start (top/left)
itemsEndAlign items to end (bottom/right)
itemsCenterAlign items to center
itemsBaselineAlign items to baseline
itemsStretchStretch items to fill container

Justify

Main-axis alignment for flex items (justify-content). Controls how flex children distribute along the flex direction.

PropDescription
justifyStartPack items toward the start of the main axis
justifyEndPack items toward the end of the main axis
justifyCenterCenter items along the main axis
justifyBetweenDistribute items with space between them
justifyAroundDistribute items with space around them
justifyEvenlyDistribute items with equal space around them
justifyStretchStretch items to fill the main axis
justifyBaselineAlign items along their baseline on main axis

Align self

Cross-axis alignment for a single flex or grid item (align-self), overriding the parent's items value for that one child.

PropDescription
alignSelfAutoUse the parent's align-items value (align-self: auto)
alignSelfStartAlign this item to the start of the cross axis
alignSelfEndAlign this item to the end of the cross axis
alignSelfCenterCenter this item on the cross axis
alignSelfStretchStretch this item to fill the cross axis
alignSelfBaselineAlign this item to its baseline

Justify self

Inline-axis alignment for a single grid item within its grid area (justify-self). Useful with CSS anchor positioning.

PropDescription
justifySelfAutoUse the parent's justify-items value (justify-self: auto)
justifySelfStartAlign this item to the start of the inline axis
justifySelfEndAlign this item to the end of the inline axis
justifySelfCenterCenter this item on the inline axis
justifySelfStretchStretch this item to fill the inline axis

Position

CSS positioning property values for controlling element position behavior.

PropDescription
relativeRelative positioning
absoluteAbsolute positioning
fixedFixed positioning
stickySticky positioning
staticStatic positioning

Display

CSS display property values for controlling element layout behavior.

PropDescription
inlineInline display - flows with text
blockBlock display - takes full width, new line
inlineBlockInline-block display - inline but with block properties
flexFlex display - flexbox container
inlineFlexInline-flex display - inline flexbox container
gridGrid display - CSS grid container
inlineGridInline-grid display - inline grid container
contentsContents display - element's box is removed, children display as if parent didn't exist
tableTable display - behaves like table element
tableCellTable-cell display - behaves like td element
hiddenHidden display - element is not visible

Overflow

Overflow behavior for content that exceeds container bounds.

PropDescription
overflowAutoAuto overflow - show scrollbars if needed
overflowHiddenHidden overflow - clip content without scrollbars
overflowClipClip overflow - hard clip without scrollbars
overflowVisibleVisible overflow - content extends beyond bounds
overflowScrollScroll overflow - always show scrollbars
overflowXAutoAuto overflow on X-axis only
overflowYAutoAuto overflow on Y-axis only
overflowXHiddenHidden overflow on X-axis only
overflowYHiddenHidden overflow on Y-axis only
overflowXClipClip overflow on X-axis only
overflowYClipClip overflow on Y-axis only
overflowXVisibleVisible overflow on X-axis only
overflowYVisibleVisible overflow on Y-axis only
overflowXScrollScroll overflow on X-axis only
overflowYScrollScroll overflow on Y-axis only

Wrap

Flex item wrapping behavior for multiline layouts.

PropDescription
flexWrapAllow flex items to wrap to new lines when container is too narrow
flexNoWrapForce flex items to stay on single line (may overflow)
flexWrapReverseWrap flex items in reverse order (last items wrap first)

Gap

Spacing between flex/grid items.

PropDescription
gapEnable gap spacing between children
noGapDisable gap spacing

Flex direction

Flex layout direction for arranging children.

PropDescription
rowFlex direction row (horizontal)
columnFlex direction column (vertical)
rowReverseFlex direction row-reverse
columnReverseFlex direction column-reverse

Flex

Flex-grow / flex-shrink shorthand for distributing space along the main axis. Mutually exclusive: only one value can be active.

PropDescription
flex1Take up remaining space (flex: 1 1 0%); the standard "fill the rest" behavior
flexAutoGrow but respect intrinsic content size (flex: 1 1 auto)
flexNoneDon't grow and don't shrink (flex: none); fixed-size in a flex container

Shrink

Flex-shrink override. Independent toggle so it can be combined with flex1/flexAuto or used standalone.

PropDescription
noShrinkPrevent the item from shrinking below its content size (shrink-0); typical for fixed-width sidebars in a flex row

Border

Border visibility on component sides. Side props compose: borderT borderL applies both. noBorder resets and wins.

PropDescription
borderEnable border on all sides
borderTEnable border on top
borderBEnable border on bottom
borderLEnable border on left
borderREnable border on right
borderXEnable border on left and right
borderYEnable border on top and bottom
borderStartEnable border on the inline-start side (flips under dir="rtl")
borderEndEnable border on the inline-end side (flips under dir="rtl")
noBorderDisable all borders

Margin

External spacing that scales with the component's size prop, available on layout components and block typography. Side props compose: marginT marginB applies both. noMargin resets and wins. Block typography defaults to noMargin.

PropDescription
marginEnable margin on all sides
marginXEnable margin on left and right
marginYEnable margin on top and bottom
marginTEnable margin on top
marginBEnable margin on bottom
noMarginDisable all margins

Shadow

Drop shadow visibility.

PropDescription
shadowEnable drop shadow
noShadowDisable drop shadow

Ring

Inset ring visibility. insetRing is an always-on decorative inset ring, not the keyboard focus indicator (that is focusVisible, in the Focus visible section).

PropDescription
insetRingEnable the inset ring
noInsetRingDisable the inset ring

Focus visible

Focus-visible outline visibility for keyboard navigation indicators.

PropDescription
focusVisibleEnable focus-visible outline
noFocusVisibleDisable focus-visible outline

Default on Link, NavLink, MenuItem. Auto-enabled on components that tag-switch to <a> via href (Badge, Card, Chip, Code, Row, Col, Stack).

Cursor

Cursor appearance for interactive elements and states.

PropDescription
cursorPointerPointer cursor - indicates clickable element
cursorDefaultDefault cursor - standard arrow
cursorNotAllowedNot-allowed cursor - indicates disabled state
cursorNoneNo cursor - hides the cursor
cursorTextText cursor - indicates selectable text
cursorMoveMove cursor - indicates draggable element
cursorWaitWait cursor - indicates loading/processing

Transition

Animation effects for state changes.

PropDescription
transitionEnable smooth transitions between states
noTransitionDisable transitions for instant state changes

Whitespace

Text wrapping and whitespace behavior.

PropDescription
whitespaceNowrapNo wrap - text stays on single line
whitespaceNormalNormal wrapping - default browser behavior
whitespacePrePreserve whitespace and line breaks
whitespacePreWrapPreserve whitespace, wrap text
whitespacePreLinePreserve line breaks, collapse spaces, wrap text
whitespaceBreakSpacesBreak words to prevent overflow

Width

Component width sizing.

PropDescription
wFullSet width to 100%
wFitSet width to fit-content
wAutoSet width to auto
wScreenSet width to 100vw (viewport width), removes max-width constraint

Height

Component height sizing.

PropDescription
hFitSet height to fit-content
hFullSet height to 100%
hAutoSet height to auto
hScreenSet height to 100vh (viewport height), removes max-height constraint

Transparent

Disable background color, making the component transparent.

PropDescription
transparentDisable background color - makes component background transparent

Responsive

Enable breakpoint-specific sizing for adaptive layouts.

PropDescription
responsiveSizingEnable responsive sizing - uses breakpoint-specific classes for font size, padding, and gap

Object fit

Image and video sizing within their containers.

PropDescription
objectCoverCover - image covers container, may be cropped
objectContainContain - image fits inside container, may have letterboxing
objectFillFill - image stretches to fill container
objectNoneNone - image displays at natural size
objectScaleDownScale down - like contain, but never scales up

Blur

Backdrop blur effect for overlays and visual effects.

PropDescription
backdropBlurEnable backdrop blur effect
noBackdropBlurDisable backdrop blur effect

Pointer events

Element interactivity with the pointer.

PropDescription
pointerEventsNoneDisable pointer events - clicks pass through the element
pointerEventsAutoEnable pointer events (default browser behavior)

Constrain width

Minimum width constraint for popup and floating components.

PropDescription
constrainWidthApply size-dependent minimum width (uses --popup-min-w CSS variable)

Clamp height

Maximum height constraint for components.

PropDescription
clampHeightApply size-dependent maximum height (uses --max-height CSS variable)

Orientation

Horizontal or vertical layout direction for certain components.

PropDescription
horizontalDisplay as a horizontal line (default)
verticalDisplay as a vertical line instead of horizontal

More in Reference