2009-05-20 17 views
71

al incrustar un objeto Flash con la etiqueta <object> y <embed>, hay un atributo llamado wmode. Parece que la mayoría de las veces, wmode="transparent" es lo mismo que wmode="opaque" ya que Flash no tiene ningún color transparente para que se muestre el elemento HTML inferior. Como resultado, opaque debe ser más rápido que transparent ya que requiere menos procesamiento para la transparencia, sin embargo, la mayoría de las veces veo el objeto Flash incrustado con transparent en lugar de opaque.diferencias entre usar wmode = "transparente", "opaco" o "ventana" para un objeto incrustado en una página web

opaque es necesario para que otro elemento HTML no quede oculto por el objeto Flash (como un elemento de menú que aparece un submenú adicional no será cubierto por el objeto Flash).

Por cierto, ¿hay documentación formal para wmode 's opaque, transparent y window? Solo pude encontrar blogs que lo describen, pero no la documentación formal. Gracias.

+0

Gracias por la explicación que wmode = "opaco" que se necesita para que otros elementos HTML no serán cubiertos hacia arriba. Incrustar un video de youtube me estaba volviendo loco con esto.El código incrustado predeterminado de YouTube no contiene wmode y se superpuso a otros divs a pesar de que tenían valores de z-index más altos. Gracias. – raddevus

Respuesta

34

Aquí está algo débil adobe documentation en diferentes configuraciones de wmode Flash 9.

Una nota de precaución sobre wmode transparent está aquí en el adobe bug trac.

Y nuevo para flash 10, hay dos nuevas wmodes: gpu y direct. Por favor, consulte Adobe Knowledge Base about wmode.

+6

genial, aquí hay una cita del documento: wmode - Valores posibles: ventana, opaco, transparente. Establece la propiedad Modo de ventana de la película Flash para transparencia, estratificación y posicionamiento en el navegador. ventana - la película se reproduce en su propia ventana rectangular en una página web. opaco: la película oculta todo en la página detrás de él. transparente: el fondo de la página HTML se muestra a través de todas las partes transparentes de la película, esto puede ralentizar el rendimiento de la animación. –

20

Opaque causará menos tensión en el sistema ya que 'transparent' aún intentará aplicar alpha. La razón por la que se ve transparente se usa en su lugar porque la mayoría de los autores web no prestan atención a los detalles (es decir, simplemente copian y pegan algún código de inserción que encontraron).

Por cierto, tiene razón acerca de que no está documentado. Lo mejor que he visto es un blog de un chico que dice tener habló a un desarrollador de Macromedia al respecto. Desafortunadamente no puedo encontrar el enlace.

EDITAR: creo que fue éste: http://www.communitymx.com/content/article.cfm?cid=e5141

7

y con IE, Flash recibe los eventos del teclado, pero también la página html los recibe, por lo que no se puede utilizar para algo así como incrustar un juego flash. Muy molesto

+1

Esto no responde la pregunta. – kapa

+3

@bazmegakapa: ¿cómo esto no responde la pregunta? es una diferencia muy importante en el comportamiento (lo sufrí en un sitio web de juegos muy importante que lo hace inservible :() y una dificultad no muy bien documentada – MegaTux

+4

El OP pidió recursos sobre estos argumentos. Su respuesta habría sido una buena y comentario importante en mi opinión – kapa

2

Una cosa extraña es que en Chrome + Firefox, el evento MOUSE_LEAVE no se envía para OPAQUE y TRANSPARENT.

Con WINDOW funciona bien. ¡Ese tomó algún tiempo para descubrirlo! GRR ...

(nota: jediericb mencionado this bug - que es similar, pero no menciona MOUSE_LEAVE)

Cuestiones relacionadas