Rogério Lino

Flash: SWF com Fundo transparente

Posted by: Rogério Alencar Lino Filho on: 4 Fevereiro, 2007

Mesmo sendo fácil ainda há gente que não conhece. Através de um parâmetro (<param>) dentro da tag object podemos especificar se o arquivo terá o fundo transparente.

<param name=”wmode” value=”transparent” />

Para muitos que aindam usam a tag embed para funcionar em todos os browsers tem que colocar o atributo wmode nela também:

<embed wmode=”transparent” … />

Então o código validado do SWF com fundo transparente ficaria assim:

<object type=”application/x-shockwave-flash” data=”filme.swf” width=”550″ height=”400″>
<param name=”allowScriptAccess” value=”sameDomain” />
<param name=”movie” value=”filme.swf” />
<param name=”wmode” value=”transparent” />
</object>

Uma coisa que acontece também que pode gerar bastante dor de cabeça é quando algum elemento do HTML que deveria ficar por cima do SWF e acaba acontecendo o contrário. E você pode alterar o position o z-index e nada. O “bicho” insiste em ficar por cima.

E a solução consiste apenas em deixar o SWF com o fundo transparente.

33 Respostas para "Flash: SWF com Fundo transparente"

essa tranparencia funcioan tb no browser Firefox

O q significa essa paramnetro:

utilizei esse recurso na tentativa de utilizar um filme flash como background de uma pagina, usando div para o conteudo que fica por cima da animação, funcionou pefeitamente no firefox, mas o mesmo codigo nem mostra o filme no explore.
escreve algo aqui dentro

o que devo fazer para funcionar nos dois ????

não funcionou

O W3C não prevê o uso da tag EMBED. Esta tag não é padrão e assim uma página com este código não poderia ser validado. Existe algum modo de transparência que funcione na maioria dos navegadores do mercado e não contenha a tag EMBED?

Cara!

Já tentei de tuo para conseguir fazer funcionar no firefox mas não funciona. Já coloquei no embed e nada. No IE funciona tranquilo.

Li que é preciso pegar a imagem de fundo e torná-la transparente usando o photoshop, mas sinceramente não sei fazer isso.

Se vc puder ajudar eu agradeço!

Valeu

Olá pessoal
Também estou com dificuldade de colocar layers por cima do fundo flash, tenho bonecos e não consigo colocar os balões de fala
Alguém pode ajudar?
Se puder ajudar eu agradeço!
Bom ano para todos

Perfeito, suas dicas foram de grande ajuda para mim. Obrigado!

Testei e funciona no IE, Firefox e Opera, e não precisa mexer no fundo da imagem nada.

exemplo do código que funcionou pra mim:

Abraço a todos!

ficou filé!!!!

Você já viu que em alguns sites o conteúdo que está por baixo desse banner flutuante fica inacessível no firefox?
Acontece também com os banners expansíveis, se há algum link que fica na área onde o flash expande, não se consegue clicar nele, o firefox interpreta que o flash está em cima, o que acaba bloqueando o conteúdo que está na layer de baixo.
Saberia como resolver isso?

detalhe, mesmo que o banner esteja com o fundo transparente, isso acontece no firefox.

Já ando no mundo do web design há muitos anos e nunca tinha necessitado de pôr o fundo transparente no flash, e assim abre-se mais um leque infinito de probabilidades de se fazerem mais coisas novas. O mundo da informática é assim mesmo, quanto mais se descobre mais á a descobrir.
obrigado pelo excelente exemplo.

Cara,

Parabéns pela explicação sobre background transparente no flash… eu sempre quis saber como tirava a cor de fundo da animação e jamais imaginei que um simples parâmetro o fizesse. Parabéns…

Muito bacana!
Pequenos detalhes fazem a grande diferença!

Para o pessoal que não conseguiu fazer funcionar:

Copiei o código postado aqui e colei dentro da tag object. A princípio não funcionou. Fiquei um bom tempo fazendo testes até descobrir que as apas (”) não estavam corretas.
As aspas postadas aqui são assim:

mas pra mim só funcionou quando coloquei assim:

Talvez isso resolva o problema de alguns.

(desconsiderem a mensagem acima)
Para o pessoal que não conseguiu fazer funcionar:

Copiei o código postado aqui e colei dentro da tag object. A princípio não funcionou. Fiquei um bom tempo fazendo testes até descobrir que as apas ” não estavam corretas.

As aspas postadas aqui são assim:

mas pra mim só funcionou quando coloquei assim:

*não esqueçam de tirar a barra / na linha acima

Talvez isso resolva o problema de alguns.

Bom, não consegui postar o código html nas mensagens acima. Mas resumindo, pra mim só funcionou quando troquei as aspas em itálico ” pelas aspas normais “

obrigado…estava precissando mesmo disso

Atenciosamente,
Paulo Henrique
http://www.digitalldesignart.com
Soluções para Internet

André matou a pau!
O probl eram as aspas!

ola onde eu acho o paramentro tag no flash para colocaar os comando

Mesma duvida de – Micheli :

Você já viu que em alguns sites o conteúdo que está por baixo desse banner flutuante fica inacessível no firefox?
Acontece também com os banners expansíveis, se há algum link que fica na área onde o flash expande, não se consegue clicar nele, o firefox interpreta que o flash está em cima, o que acaba bloqueando o conteúdo que está na layer de baixo.

Saberia como resolver isso?

Junior,

Isso acontece porque o browser mesmo o swf com o fundo transparente, ele ainda está sobre o conteúdo, o que acaba bloqueando acesso aos links que estão abaixo.

Uma maneira de resolver isso seria utlizando javascript. Primeiramente deixaria o swf com o seu tamanho mínimo inicial (com autoScale false), e ao passar o mouse sobre a animação chamaria um método javascript para aumentar o tamanho do swf com o tamanho padrão do palco da animação.

E quando o mouse fosse “rolado” para fora chamaria um outro método javascript para retornar o tamanho inicial do swf.

obs: eu tinha respondido por email, e acabei esquecendo de colocar a mensagem aqui.

Att.

Rogério

olá realmente estava faltando algo para funcionar no firefox, outra coisa qual o comando que posso colocar no botão fechar p/ que funcione em ambos navegadores?

Obrigado té mais.

Funciona em Firefox e IE.

É só corrigir as aspas.

Galera. O lance é o seguinte. Tem que fazer as duas alterações que o bruxo aí informou:

e

<embed wmode=”transparent” ….

Mas também tem que fazer esta aqui:

‘wmode’, ‘transparent’,

Galera. O lance é o seguinte. Tem que fazer as duas alterações que o bruxo aí informou:

..

(substituindo os pontos por espaços)

e

<embed wmode=”transparent” ….

Mas também tem que fazer esta aqui:

‘wmode’, ‘transparent’,

Já tentei 1000 vezes e nao consegui fazer, a porra do fundo continua branco! Abandonei o projeto há uma semana fui vencido pelo cansaço!

Dúvida: ONDE DIABOS VOU EDITAR ESSE PARAMETRO????

Eu faço seguindo deixo a opção marcado no flash em “html’ dou F12 pra visualizar a animação vou na aba EXIBIR da pagina, depois CODIGO DA FONTE, mas como não se pode editar nada ali, salvo a pagina, abro pelo Dreamweaver altero o codigo e substituo COLOR por TRANSPARENT, E NADA!!!

Alguem por favor, sabe como se faz isso?

Vou postar aqui o codigo dele:

img/botao/original/submenu



Acabei de descobrir o codigo tem que ser alterado no proprio dreamweaver e esqueceram de dizer que falta ainda mudar um terceiro parametro fora de “object”. Dessa forma descrita acima era impossivel deixar o fundo transparente. Mas aqui está onde vcs devem adicionar o esquecido terceiro parametro:

AQUI:

AC_FL_RunContent( ‘codebase’,'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0′,’width’,'730′,
‘height’,'242′,’src’,'exemplo’,'quality’,'high’,'wmode’,'transparent’,'pluginspage’,
‘http://www.macromedia.com/go/getflashplayer’,'movie’,’spine2_camuflado’ ); //end AC code

Ola Pessoal

Aguem pode me passar o codigo pra que funcione no firefox?

Obrigada

email: ciisa@uol.com.br

FUNCIONOU !!

Era isso mesmo que precisava colocar swf transparente no Html.fikou show
Mt Obrigada!!!
:)

Cara obrigado! funcionou no ie8 e no chrome :D

claro que c precisa excluir os codigos que utiliza um script dos players mais novos, mas funciona no geral!!!

;D

ME AJUDA KRA NAO CONSEGUI.. USO O FLASH CS3 .. ACTION SCRIPT 2 VLW.. KRA!!

Deixe uma Resposta

Categorias