Use Music player quando a interface precisar de players compactos, playlists e composições de mídia com controles reais.
Music player
Players compactos, playlists e composições de mídia com controles reais. A documentação abaixo separa composição, comportamento e adaptação visual de cada variante.
Evite a família quando uma composição semântica mais simples comunicar a mesma ação com menos carga visual.
A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Coverflow premium (card)
Coverflow premium (card), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-music-shell">
<div class="sc-card sc-card-outline">
<div data-music-player="true" data-initial="3">
<div class="sc-coverflow">
<div class="sc-coverflow-track" aria-label="Covers (coverflow)" tabindex="0">
<div class="sc-coverflow-slide">
<img src="/assets/slide (1).svg" alt="Capa 1">
<div class="sc-coverflow-overlay">
<a class="sc-coverflow-link" data-music-youtube="" href="https://www.youtube.com/" target="_blank" rel="noopener" aria-label="Abrir no YouTube">
<i class="sc-icon" data-smart-icon="youtube"></i>
</a>
</div>
</div>
<div class="sc-coverflow-slide"><img src="/assets/slide (2).svg" alt="Capa 2"><div class="sc-coverflow-overlay"><a class="sc-coverflow-link" data-music-youtube="" href="https://www.youtube.com/" target="_blank" rel="noopener" aria-label="Abrir no YouTube"><i class="sc-icon" data-smart-icon="youtube"></i></a></div></div>
<div class="sc-coverflow-slide"><img src="/assets/slide (3).svg" alt="Capa 3"><div class="sc-coverflow-overlay"><a class="sc-coverflow-link" data-music-youtube="" href="https://www.youtube.com/" target="_blank" rel="noopener" aria-label="Abrir no YouTube"><i class="sc-icon" data-smart-icon="youtube"></i></a></div></div>
<div class="sc-coverflow-slide"><img src="/assets/slide (4).svg" alt="Capa 4"><div class="sc-coverflow-overlay"><a class="sc-coverflow-link" data-music-youtube="" href="https://www.youtube.com/" target="_blank" rel="noopener" aria-label="Abrir no YouTube"><i class="sc-icon" data-smart-icon="youtube"></i></a></div></div>
<div class="sc-coverflow-slide"><img src="/assets/slide (5).svg" alt="Capa 5"><div class="sc-coverflow-overlay"><a class="sc-coverflow-link" data-music-youtube="" href="https://www.youtube.com/" target="_blank" rel="noopener" aria-label="Abrir no YouTube"><i class="sc-icon" data-smart-icon="youtube"></i></a></div></div>
<div class="sc-coverflow-slide"><img src="/assets/slide (6).svg" alt="Capa 6"><div class="sc-coverflow-overlay"><a class="sc-coverflow-link" data-music-youtube="" href="https://www.youtube.com/" target="_blank" rel="noopener" aria-label="Abrir no YouTube"><i class="sc-icon" data-smart-icon="youtube"></i></a></div></div>
<div class="sc-coverflow-slide"><img src="/assets/slide (7).svg" alt="Capa 7"><div class="sc-coverflow-overlay"><a class="sc-coverflow-link" data-music-youtube="" href="https://www.youtube.com/" target="_blank" rel="noopener" aria-label="Abrir no YouTube"><i class="sc-icon" data-smart-icon="youtube"></i></a></div></div>
</div>
</div>
<div class="sc-music-player sc-music--tight">
<h3 class="sc-music-player-title" data-music-title="">Título</h3>
<p class="sc-music-player-subtitle" data-music-artist="">Artista</p>
<audio></audio>
<div class="sc-music-time">
<span data-music-time="">0:00</span>
<span data-music-duration="">0:00</span>
</div>
<input class="sc-range" type="range" value="0" aria-label="Progresso">
<div class="sc-music-controls">
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-prev="" aria-label="Anterior"><i class="sc-icon" data-smart-icon="chevrons-left"></i></button>
<button class="sc-btn sc-btn-primary sc-btn-icon is-main" type="button" data-music-toggle="" aria-label="Play/Pause"><i class="sc-icon" data-smart-icon="play-circle" data-music-icon=""></i></button>
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-next="" aria-label="Próxima"><i class="sc-icon" data-smart-icon="chevrons-right"></i></button>
</div>
</div>
</div>
</div>
</div>Classes, JavaScript e API
Inicialize musicPlayers após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- musicPlayers
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Mini player (barra)
Mini player (barra), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div data-music-player="true" class="sc-music-mini" data-initial="0">
<div class="sc-music-mini-cover">
<img data-music-cover="" src="/assets/slide (1).svg" alt="Capa">
</div>
<div class="sc-music-mini-meta">
<p class="sc-music-mini-title" data-music-title="">Título</p>
<p class="sc-music-mini-subtitle" data-music-artist="">Artista</p>
<input class="sc-range sc-range-sm" type="range" value="0" aria-label="Progresso">
</div>
<div class="sc-music-mini-controls">
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-prev="" aria-label="Anterior"><i class="sc-icon" data-smart-icon="chevrons-left"></i></button>
<button class="sc-btn sc-btn-primary sc-btn-icon is-main" type="button" data-music-toggle="" aria-label="Play/Pause"><i class="sc-icon" data-smart-icon="play-circle" data-music-icon=""></i></button>
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-next="" aria-label="Próxima"><i class="sc-icon" data-smart-icon="chevrons-right"></i></button>
</div>
<audio></audio>
</div>Classes, JavaScript e API
Inicialize musicPlayers após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- musicPlayers
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Player + playlist clicável
Player + playlist clicável, preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-music-shell">
<div data-music-player="true" data-initial="1" class="sc-music-player">
<h3 class="sc-music-player-title" data-music-title="">Título</h3>
<p class="sc-music-player-subtitle" data-music-artist="">Artista</p>
<audio></audio>
<div class="sc-music-time">
<span data-music-time="">0:00</span>
<span data-music-duration="">0:00</span>
</div>
<input class="sc-range" type="range" value="0" aria-label="Progresso">
<div class="sc-music-controls">
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-prev="" aria-label="Anterior"><i class="sc-icon" data-smart-icon="chevrons-left"></i></button>
<button class="sc-btn sc-btn-primary sc-btn-icon is-main" type="button" data-music-toggle="" aria-label="Play/Pause"><i class="sc-icon" data-smart-icon="play-circle" data-music-icon=""></i></button>
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-next="" aria-label="Próxima"><i class="sc-icon" data-smart-icon="chevrons-right"></i></button>
</div>
</div>
<div class="sc-music-list" aria-label="Playlist">
<div class="sc-music-track" role="button" tabindex="0" data-music-pick="0">
<i class="sc-icon" data-smart-icon="play-circle"></i>
<div>
<div class="sc-music-track-title">Symphony</div>
<div class="sc-music-track-subtitle">Clean Bandit ft. Zara Larsson</div>
</div>
<i class="sc-icon" data-smart-icon="chevrons-right"></i>
</div>
<div class="sc-music-track" role="button" tabindex="0" data-music-pick="1">
<i class="sc-icon" data-smart-icon="play-circle"></i>
<div>
<div class="sc-music-track-title">Pawn It All</div>
<div class="sc-music-track-subtitle">Alicia Keys</div>
</div>
<i class="sc-icon" data-smart-icon="chevrons-right"></i>
</div>
<div class="sc-music-track" role="button" tabindex="0" data-music-pick="2">
<i class="sc-icon" data-smart-icon="play-circle"></i>
<div>
<div class="sc-music-track-title">Instant Crush</div>
<div class="sc-music-track-subtitle">Daft Punk ft. Julian Casablancas</div>
</div>
<i class="sc-icon" data-smart-icon="chevrons-right"></i>
</div>
</div>
</div>Classes, JavaScript e API
Inicialize musicPlayers após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- musicPlayers
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Neon / glass (tema-driven)
Neon / glass (tema-driven), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-card sc-card-outline sc-fx-conic">
<div data-music-player="true" data-initial="2" class="sc-music-shell">
<div class="sc-music-player sc-music--neon">
<h3 class="sc-music-player-title" data-music-title="">Título</h3>
<p class="sc-music-player-subtitle" data-music-artist="">Artista</p>
<audio></audio>
<div class="sc-music-time">
<span data-music-time="">0:00</span>
<span data-music-duration="">0:00</span>
</div>
<input class="sc-range" type="range" value="0" aria-label="Progresso">
<div class="sc-music-controls">
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-prev="" aria-label="Anterior"><i class="sc-icon" data-smart-icon="chevrons-left"></i></button>
<button class="sc-btn sc-btn-primary sc-btn-icon is-main" type="button" data-music-toggle="" aria-label="Play/Pause"><i class="sc-icon" data-smart-icon="play-circle" data-music-icon=""></i></button>
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-next="" aria-label="Próxima"><i class="sc-icon" data-smart-icon="chevrons-right"></i></button>
</div>
</div>
</div>
</div>Classes, JavaScript e API
Inicialize musicPlayers após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- musicPlayers
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Card (capa + player lado a lado)
Card (capa + player lado a lado), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div data-music-player="true" data-initial="0" class="sc-music-card">
<div class="sc-music-card-cover">
<img data-music-cover="" src="/assets/slide (1).svg" alt="Capa">
</div>
<div class="sc-music-player sc-music--flat">
<h3 class="sc-music-player-title" data-music-title="">Título</h3>
<p class="sc-music-player-subtitle" data-music-artist="">Artista</p>
<audio></audio>
<div class="sc-music-time">
<span data-music-time="">0:00</span>
<span data-music-duration="">0:00</span>
</div>
<input class="sc-range" type="range" value="0" aria-label="Progresso">
<div class="sc-music-controls">
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-prev="" aria-label="Anterior"><i class="sc-icon" data-smart-icon="chevrons-left"></i></button>
<button class="sc-btn sc-btn-primary sc-btn-icon is-main" type="button" data-music-toggle="" aria-label="Play/Pause"><i class="sc-icon" data-smart-icon="play-circle" data-music-icon=""></i></button>
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-next="" aria-label="Próxima"><i class="sc-icon" data-smart-icon="chevrons-right"></i></button>
</div>
</div>
</div>Classes, JavaScript e API
Inicialize musicPlayers após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- musicPlayers
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Playlist (somente lista, sem capa)
Playlist (somente lista, sem capa), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div data-music-player="true" data-initial="0" class="sc-music-shell">
<div class="sc-music-player sc-music--tight">
<h3 class="sc-music-player-title" data-music-title="">Título</h3>
<p class="sc-music-player-subtitle" data-music-artist="">Artista</p>
<audio></audio>
<div class="sc-music-time">
<span data-music-time="">0:00</span>
<span data-music-duration="">0:00</span>
</div>
<input class="sc-range" type="range" value="0" aria-label="Progresso">
<div class="sc-music-controls">
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-prev="" aria-label="Anterior"><i class="sc-icon" data-smart-icon="chevrons-left"></i></button>
<button class="sc-btn sc-btn-primary sc-btn-icon is-main" type="button" data-music-toggle="" aria-label="Play/Pause"><i class="sc-icon" data-smart-icon="play-circle" data-music-icon=""></i></button>
<button class="sc-btn sc-btn-glass sc-btn-icon" type="button" data-music-next="" aria-label="Próxima"><i class="sc-icon" data-smart-icon="chevrons-right"></i></button>
</div>
</div>
<div class="sc-music-list" aria-label="Playlist">
<div class="sc-music-track" role="button" tabindex="0" data-music-pick="0">
<i class="sc-icon" data-smart-icon="play-circle"></i>
<div>
<div class="sc-music-track-title">Symphony</div>
<div class="sc-music-track-subtitle">Clean Bandit ft. Zara Larsson</div>
</div>
<i class="sc-icon" data-smart-icon="chevrons-right"></i>
</div>
<div class="sc-music-track" role="button" tabindex="0" data-music-pick="1">
<i class="sc-icon" data-smart-icon="play-circle"></i>
<div>
<div class="sc-music-track-title">Pawn It All</div>
<div class="sc-music-track-subtitle">Alicia Keys</div>
</div>
<i class="sc-icon" data-smart-icon="chevrons-right"></i>
</div>
<div class="sc-music-track" role="button" tabindex="0" data-music-pick="2">
<i class="sc-icon" data-smart-icon="play-circle"></i>
<div>
<div class="sc-music-track-title">Instant Crush</div>
<div class="sc-music-track-subtitle">Daft Punk ft. Julian Casablancas</div>
</div>
<i class="sc-icon" data-smart-icon="chevrons-right"></i>
</div>
</div>
</div>Classes, JavaScript e API
Inicialize musicPlayers após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- musicPlayers
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.