<media-volume-range>

The <media-volume-range> component is used to indicate the current volume level of the media and provide a control to change the volume level.

The component will be updated automatically based on the volume level and volume availability.

<media-controller defaultsubtitles>
  <video
    playsinline muted crossorigin
    slot="media"
    src="https://stream.mux.com/A3VXy02VoUinw01pwyomEO3bHnG4P32xzV7u1j1FSzjNg/low.mp4"
  >
  </video>
  <media-control-bar>
    <media-mute-button></media-mute-button>
    <media-volume-range></media-volume-range>
  </media-control-bar>
</media-controller>

The <media-volume-range> doesn’t expose any configuration attributes. However, it will be updated with Media UI Attributes any time the volume changes or volume availability is updated.

You can use these attributes to style the button. For example, if volume is unavailable, perhaps on an iPhone, hide the volume range:

media-volume-range[mediavolumeunavailable] {
  display: none;
}

Or, set the background color to red if the media is muted:

media-volume-range[mediamuted] {
  --media-control-background: red;
 }
NameTypeDescription
disabledbooleanThe Boolean disabled attribute makes the element not mutable or focusable.
aria-disabled
mediacontrollerstringThe element `id` of the media controller to connect to (if not nested within).

The media UI attributes will be set automatically by the controller if they are connected via nesting or the mediacontroller attribute. Only set these attributes manually if you know what you're doing.

NameTypeDescription
mediavolumestring Set to the media volume.
mediamutedboolean Set to the media muted state.
mediavolumeunavailablestring Set if changing volume is unavailable.
NameDefaultDescription
--media-volume-range-displayinline-blockdisplay property of range.
--media-primary-colorrgb(238 238 238)Default color of range bar.
--media-secondary-colorrgb(20 20 30 / .7)Default color of range background.
--media-control-displayinline-blockdisplay property of control.
--media-control-padding10pxpadding of control.
--media-control-backgroundvar(--media-secondary-color, rgb(20 20 30 / .7))background of control.
--media-control-hover-backgroundrgb(50 50 70 / .7)background of control hover state.
--media-control-height24pxheight of control.
--media-range-paddingvar(--media-control-padding, 10px)padding of range.
--media-range-padding-leftvar(--_media-range-padding)padding-left of range.
--media-range-padding-rightvar(--_media-range-padding)padding-right of range.
--media-range-thumb-width10pxwidth of range thumb.
--media-range-thumb-height10pxheight of range thumb.
--media-range-thumb-bordernoneborder of range thumb.
--media-range-thumb-border-radius10pxborder-radius of range thumb.
--media-range-thumb-backgroundvar(--media-primary-color, rgb(238 238 238))background of range thumb.
--media-range-thumb-box-shadow1px 1px 1px transparentbox-shadow of range thumb.
--media-range-thumb-transitiontransition of range thumb.
--media-range-thumb-transformnonetransform of range thumb.
--media-range-thumb-opacity1opacity of range thumb.
--media-range-bar-colorvar(--media-primary-color, rgb(238 238 238))color_value of range bar (elapsed progress).
--media-range-track-colortransparentcolor_value of range track (remaining progress).
--media-range-track-backdrop-filterbackdrop-filter of range track.
--media-range-track-width100%width of range track.
--media-range-track-height4pxheight of range track.
--media-range-track-bordernoneborder of range track.
--media-range-track-outlineoutline of range track.
--media-range-track-outline-offsetoutline-offset of range track.
--media-range-track-border-radius1pxborder-radius of range track.
--media-range-track-box-shadownonebox-shadow of range track.
--media-range-track-transitiontransition of range track.
--media-range-track-translate-x0pxtranslate x-coordinate of range track.
--media-range-track-translate-y0pxtranslate y-coordinate of range track.
--media-range-track-backgroundrgb(255 255 255 / .2)background of range track background.
--media-range-track-background-backdrop-filterbackdrop-filter of range track background.
--media-time-range-hover-displayblockdisplay of range hover zone.
--media-time-range-hover-bottom-5pxbottom of range hover zone.
--media-time-range-hover-heightmax(100% + 5px, 20px)height of range hover zone.
--media-range-track-pointer-backgroundbackground of range track pointer.
--media-range-track-pointer-border-rightborder-right of range track pointer.