FrameworkStyle

volume-slider

A slider component for controlling media volume

Features

  • Supports both horizontal and vertical orientations
  • Displays current volume level
  • Reflects muted state
  • Keyboard accessible (Arrow keys for volume adjustment)
  • Touch-friendly drag interaction

Example

<media-volume-slider orientation="horizontal">
  <media-volume-slider-track>
    <media-volume-slider-indicator></media-volume-slider-indicator>
  </media-volume-slider-track>
  <media-volume-slider-thumb></media-volume-slider-thumb>
</media-volume-slider>

Data Attributes

The VolumeSlider automatically sets data attributes:

  • data-orientation - Current orientation (‘horizontal’ or ‘vertical’)
  • data-muted - Present when volume is muted
  • data-volume-level - Volume level category: ‘high’ (>50%), ‘medium’ (25-50%), ‘low’ (1-24%), or ‘off’ (0%)

Use these attributes for state-based styling in your CSS.

CSS Variables

The component exposes CSS variables for positioning:

  • --slider-fill - Percentage of volume level (0-100%)
  • --slider-pointer - Percentage of pointer position (0-100%)

Accessibility

  • Includes proper ARIA role (slider)
  • Keyboard accessible (Arrow keys, Home, End)
  • Screen reader announcements for volume values
  • Proper aria-valuemin, aria-valuemax, aria-valuenow attributes
VideoJS