IE6 Double Margin / Duplicate Characters bug fix usando jQuery

Postado por: Pedro Rogério em

Meus amigos desenvolvedores com certeza conhecem a fundo os mais famosos bugs do IE6, o da margem dupla e o bug da repetição de caracteres, se você não conhecia esses bugs, aconselho a dar uma lida nesses posts. Mas como conhecimento nunca é demais, acabei encontrando hoje uma simples solução para resolver esses bugs no IE6 utilizando jQuery:

$('*').each(function() {
  if ($(this).css('float') !== 'none') {
    $(this).css('display', 'inline');
  }
});

O resultado desse código é que ele irá procurar todos os elementos na página e aqueles que tenham float diferente de none será adicionado a propriedade css display:inline previnindo seu trabalho para que não ocorra esses bugs.

Via: Snipplr

Posts Relacionados

Confira também outros artigos interessantes postados aqui no blog.

Sobre Pedro Rogério

Pedro Rogério é desenvolvedor web por paixão, não saberia fazer melhor outra coisa. Além de escrever para o CSS no Lanche também escreve para o Pinceladas da Web, blog com assuntos gerais sobre desenvolvimento web.

Central Server

14 Responses to “IE6 Double Margin / Duplicate Characters bug fix usando jQuery”

  1. Igor disse:

    Pra quem tem preguiça de digitar diretamente no css.

    ps1: só uma coisa, se o IE do rapaz estiver com javascript desabilitado não funciona nada!

    Por isso eu recomento deixar os estilos para o CSS.

    ps2: Eu sempre usei o inline-block, nunca testei com o inline

    ps3: É muito caro mas os gráficos são show de bola, um dia terei um.

  2. @Igor,

    Mas se tratando de IE, é melhor deixar de dar suporte, não é verdade?

  3. Igor disse:

    @Pedro,

    Vou citar só um exemplo que aconteceu a 30 minutos.

    *
    ****
    Cliente liga reclamando que o site dele está dando problema.
    Eu: Qual navegador que você usa?

    Cliente: Ah, eu estou usando o windows XP…
    ****
    *

    Agora explica pro cliente que é importante atualizar. (nesse caso usava IE6)

  4. @Igor,

    Eu sei que é complicado, mas se a partir de agora ninguém tomar iniciativa alguma, quando será que esse browser irá desaparecer da face da terra?

  5. Não cheguei nas folhas de estilos no meu livro de html, mas já imagino os milhões de problemas e limitação por causa desse browser.

    hate ie !

  6. Neto disse:

    Boa dica Pedro, e com relação a clientes deixe isso para o suporte da empresa ou algo parecido se tiver, principalmente quem desenvolve sistemas não tem paciência e “saco” para conversar com o cliente, eu acho válido sim “ensinar” os clientes a melhorar e mostrar o caminho certo, afinal, são nossos clientes e pagam a nossa conta.

  7. Por coinsidencia ou não, lendo este post, acabei de receber um e-mail do Imasters com uma campanha para desenvolvedores ajudarem a acabar com navegadores antigos e desatualizados. Já tem gente na net pedindo desculpas, dizendo que não darão mais suporte ao IE a partir de 2009. Para quem quiser ajudar, segu o link = http://imasters.uol.com.br/crossbrowser/

  8. Retificando o comentário acima: dizendo que não darão mais suporte ao IE 6.

  9. Nagib disse:

    “Pra quem tem preguiça de digitar diretamente no css.

    ps1: só uma coisa, se o IE do rapaz estiver com javascript desabilitado não funciona nada!

    Por isso eu recomento deixar os estilos para o CSS.”

    Concordo com ele :P

    E também que esse script poderia ter uma verificação porque ler todos os elementos da pagina, verificar se ele tem float que não seja “none” é necessário somento no IE com versão <= 6 ( acho q 5.5 deve ter esse problema também).

    O ideal era colocar uma verificacao antes de executar a troca do display dos elementos para inline. usando o jQuery.browser e jQuery.browser.version!

  10. Semana passada mandei um e-mail para o pessoal da School of Net para saber se não seria interessante um post no blog para debater o assunto discutido aqui nos comentários. Infelizmente tinha ido ao lugar errado, esquecendo do CSS NO LANCHE!

    Estou feliz em ver que muitos tem a mesma teoria que eu, que devemos informar nossos clientes e à comunidade para atualizar seus computadores e browsers. Segurança para eles, menos trabalhos para nós.

  11. Olá amigos estou com um site aqui http://www.seuguiadecidades.com.br/clinica que estou fazendo ainda, mas que está apresentando todas as páginas com divs caídas e já tentei usar display block e display inline e também o display table, mas não roda no IE 6 direito, alguém aí me ajuda a achar o erro e arrumar, por gentileza, claro que também pretendo incluir em todos os sites a partir de agora a tal barrinha da campanha atualize seu navegador.

    Um forte abraço a todos!

  12. Nagib C Kanaan disse:

    Ae Vinícius, cara tem como passar algum email para mim entrar em contato contigo? Tem algumas coisas ali para te falar sobre o html…
    Abs!

  13. Nagib meu e-mail é do gmail o prefixo é “mxvinicius”

  14. Flavio Renato disse:

    Como eu havia esquecido deste Blog, que inclusive fui eu que apresentei ao pessoal da agência boqueta na qual trabalhei.
    Gostei dessa dica com JQuery, porém consegui “fixar” o bug do Maldito IE6 com o display:inline.
    CSS no Lanche e na janta!

Leave a Reply