solução transparência alfa no IE
-
13-09-2019 - |
Pergunta
Estou construindo um site com uma tonelada de png 24 arquivos que têm fundo transparente. Em IE 6 que, obviamente, não são exibidos corretamente, então eu preciso de algum tipo de boa solução confiável, que irá corrigir o problema PNG no IE e requerem pouco trabalho e ser confiável. Alguma boa idéia?
Solução
Aqui estão algumas boas png correções para o IE6:
Outras dicas
Para fins de transparência IE6 I siga um fluxo pessoal:
1 Se houver apenas uma ou duas imagens PNG (como um logotipo ou uma imagem normal) eu só uso filter
:.
#selector {background:none; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='test.png', sizingMethod='crop');}
Problemas: Se aplicada a um link, que deixará de ser clicáveis. Possivelmente se aplicam ao h1#logo
e ter a a
ser transparente.
2 Se eu tenho um monte de arquivos PNG de 24 bits, ou casos de uso especial (fundo repetindo, etc), eu uso DD_belatedPNG
IMPORTANTE PARA IE7 + IE8: Você não pode animar ou combinar o filter:alpha
(que é usado para opacity
global sobre um elemento no IE e também usado por jQuery para set opacity
) Imóvel com 24 bits transparente imagens PNG. Ele muda-lo para olhar como a transparência de 8 bits, com tudo o que não é 100% opaca ou transparente tomada em um fundo preto.
Há um monte correções IE PNG na rede, que basicamente todo o trabalho com a mesma técnica. Os exploradores de Internet mais antigos não suportam alfa em PNGs diretamente, mas todos eles têm um filtro que faz isso. Então, escrevendo o seguinte código como parte de um css de um objeto coloca a imagem na src
ao fundo do elemento:
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='image.png');
Dessa forma, você pode facilmente exibir transparência no Internet Explorer. No entanto, é muito mais fácil de obter apenas um dos scripts png correção (em JavaScript) e incluí-lo para sua página dentro de comentários condicionais. Em seguida, o script vai fazer todas as suas imagens de trabalhar automaticamente.
Nós usamos Dean Edwards' IE7 para isso. (Assim chamado antes IE7 saiu.) Tem sido bom para esse tipo de coisa.
Atualmente muitas opções para começar este trabalho. O padrão é aplicar um filtro DirectX através de CSS para a mudança fazer o PNG transparente no IE6. Há até mesmo scripts que irá automaticamente fazer isso quando as cargas página Web de uma IE6 ou menos cliente.
http://www.google.com/search ? btnG = 1 & pws = 0 & q = transparente + png + IE6