2010-11-08 15 views
81

No he encontrado ningún recurso sobre cómo hacerlo ... incluso cambiar el color del reproductor sería bueno :)¿Es posible grabar etiquetas de audio html5?

+2

Me hace pensar en los botones de ritmo en Wurlitzers antiguos - "samba", "jazz", "vals", ... –

+1

Los diferentes navegadores reaccionan de manera diferente al diseño del elemento de audio - http://stackoverflow.com/a/27765938/325251 – mvark

+1

sí, y es decir, se ve peor. ¿Cómo pueden hacer que se vea tan mal? –

Respuesta

43

Sí! La etiqueta de audio HTML5 con el atributo "controles" usa el reproductor predeterminado del navegador. Puede personalizarlo a su gusto si no usa los controles del navegador, sino que activa sus propios controles y habla con la API de audio a través de javascript.

Afortunadamente, otras personas ya lo han hecho. Mi jugador favorito en este momento es jPlayer, es muy fácil de usar y funciona muy bien. Echale un vistazo.

+25

Aún no nos dice cómo personalizarlo. Encontré algo aquí: http://www.theparticlelab.com/building-a-custom-html5-audio-player-with-jquery/ –

+29

Así que la respuesta es "no, no es posible, debes usar un reproductor externo" "¿?" – Fernando

+2

@Fernando: de hecho es posible. Esto responde a la pregunta "¿es posible?" –

23

La apariencia de la etiqueta depende del navegador, pero puede ocultarla, compilar su propia interfaz y controlar la reproducción utilizando Javascript.

10

Para cambiar sólo el color del jugador, simplemente dirigirse al audio de la etiqueta en su archivo css, por ejemplo, en uno de mis sitios que el jugador se hizo invisible (blanca en blanco) por lo que añade:

audio { 
    background-color: #95B9C7; 
} 

Esto cambió el jugador a azul claro.

+7

Esto no cambia el color de mi reproductor, solo pone un color de fondo detrás de él. ¿Alguna idea de por qué? – Tom

+0

Causa Visual STudio 2013 proyecto ASP.NET WEb App para colgar, y tengo que terminar VS por Windows Task Manager verdugo. –

4

Si quieres estilo de los navegadores estándar de reproductor de música en el CSS:

audio { 
    enter code here; 
} 
8

Ken estaba en lo cierto también.

una etiqueta css:

audio { 

} 

le conseguirá algunos resultados. parece que no quiere que el jugador tenga una altura superior o inferior a 25px, pero el ancho puede acortarse o alargarse hasta cierto punto.

esto fue lo suficientemente bueno para mí; vea este ejemplo (advertencia, el audio se reproduce automáticamente): www.thenewyorkerdeliinc.com

+0

Para mí, un gran problema es Internet Explorer. Se ve terrible y de diferente color y tamaño mucho más grande que los otros reproductores del navegador, aunque el ancho está establecido en 150px – Ringo

+0

Si necesita obtener IE9 + player en un espacio pequeño, una altura de 25px y un ancho de 100px funcionó para mí. Creo que la altura de 25px fue clave, pero un número mayor no funcionó por la razón que sea. – Ringo

33
<audio> 

audio::-webkit-media-controls-panel 

audio::-webkit-media-controls-mute-button 

audio::-webkit-media-controls-play-button 

audio::-webkit-media-controls-timeline-container 

audio::-webkit-media-controls-current-time-display 

audio::-webkit-media-controls-time-remaining-display 

audio::-webkit-media-controls-timeline 

audio::-webkit-media-controls-volume-slider-container 

audio::-webkit-media-controls-volume-slider 

audio::-webkit-media-controls-seek-back-button 

audio::-webkit-media-controls-seek-forward-button 

audio::-webkit-media-controls-fullscreen-button 

audio::-webkit-media-controls-rewind-button 

audio::-webkit-media-controls-return-to-realtime-button 

audio::-webkit-media-controls-toggle-closed-captions-button 
+6

¡Presentación deficiente pero útil selector de CSS! –

+2

¿puede por favor mostrar un ejemplo de cómo usar estos? solo muestra el código? – Xsmael

+2

Esto solo es compatible con navegadores basados ​​en webkit (por ejemplo, Firefox, IE, etc.) –

18

Sí: Puede ocultar la interfaz de usuario incorporada en el navegador (quitando el atributo controls de audio) y en su lugar construir su propia interfaz y controlar la reproducción usando Javascript (source):

<audio id="player" src="vincent.mp3"></audio> 
<div> 
    <button onclick="document.getElementById('player').play()">Play</button> 
    <button onclick="document.getElementById('player').pause()">Pause</button> 
    <button onclick="document.getElementById('player').volume += 0.1">Vol+ </button> 
    <button onclick="document.getElementById('player').volume -= 0.1">Vol- </button> 
</div> 

Puede agregar clases CSS a cada uno de los elementos (en este caso, div + button s) y darles el estilo que desee.

Propiedades adicionales & métodos de HTMLAudioElement La interfaz de JavaScript se puede encontrar en here.