Teste seu conhecimento 08
Publicado em: 2008-02-29 — 2,172 visualizacoes
Bug da borda pontilhada no IE 6 e anteriores
Este é um bug bem conhecido e a maioria dos desenvolvedores CSS já deve ter vivenciado a experiência em algum de seus projetos.
Se você define uma borda pontilhada de de 1px para um elemento qualquer na sua página, ao visualizar a borda em um navegador complacente com as Web Standards tudo se passa como esperado. Mas, a visualização no IE 6 ou anteriores se revela inconsistente e completamente equivocada, pois a borda lá está e no lugar certo, mas tracejada e não pontilhada.
Considere a declaração a seguir que coloca a referida borda em uma DIV:
div#borda {
width: 270px;
height: 70px;
background: #ffc;
border: 1px dotted #000;
}
E observe nas figuras a seguir a renderização da borda:

A solução clássica para resolver este bug é usar uma imagem do pontilhado e colocá-la como fundo do elemento.
Esta solução tem sido usada com relativa freqüência quando se trata de uma linha vertical ou horizontal separando duas áreas do site como por exemplo: separar a coluna de navegação da coluna principal com uma linha pontilhada vertical.
Mas, usar uma imagem do pontilhado para colocar borda nos 4 cantos lados de um elemento requer a inserção de mais três elementos, cada um com uma imagem de fundo para cada lado do elemento. Assim este desafio consiste em obter o efeito de borda pontilhada de 1px no IE 6 obdecendo as seguintes regras.
Regras gerais:
- Usar somente (X)HTML e CSS (sem scripts);
- Não usar imagens;
- Não usar tabelas;
- Não usar estilos inline;
- Não usar hacks;
- A renderização deve mostrar uma borda pontilhada na cor preta em volta de uma div com 270px x 70px com fundo #ffc, tanto no IE6 como no Firefox.
Bem, este é o desafio.
Caso você consiga resolver, guarde sua solução e não envie para mim.
Poste um comentário dizendo que resolveu, mas não publique a solução.
Dentro de aproximadamente 1 mês escolherei um dos que disseram ter resolvido, convidando-o a enviar-me a solução para ser publicada juntamente com minha solução.
Se você pretende acompanhar a matéria e participar da escolha da solução é uma boa idéia se inscrever para receber notificações de novos comentários marcando o checkbox no formulário dos comentários.
Em tempo: Você; receberá um belo prêmio caso encontre a solução.
O prêmio é a satisfação de dizer para você mesmo que está progredindo com seus conhecimentos sobre CSS.
Prêmio maior do que este não pode haver!
----------------x-x-x--------------- fim da matéria ---------------x-x-x---------------
Esta matéria foi publicada em: 2008-02-29 (Friday). Subscreva o feed RSS 2.0 para comentários.
Comente abaixo, ou link para http://www.maujor.com/blog/2008/02/29/teste-seu-conhecimento-8/trackback no seu site.


Resolvido!
Eu nunca tinha pensado numa solução para esse problema. É mais simples do que parece.
Poxa, que interessante!
Vou tentar!
http://fabianopereiradesigner.blogspot.com/
Já havia feito algo parecido antes. Tinha que colocar sombras em imagens que iriam variar de tamanho dinamicamente.
É só pensar um pouco antes de começar a fazer que logo vem a idéia (bem simples por sinal).
É um ótimo exercício! Boa sorte para quem for tentar!!
Muito bom.
Não sei ainda a solução, mas ainda restam alguns dias não é ?! Estou tentando!
Creio que consegui =). Em ambos os browsers
Obrigado pela dica
Consegui fazer o pontilhado mais não está renderizando na mesma espessura… vou continuar buscando a solução.
Thanks, I will try this in my blog
http://2refresh.blogspot.com/
Acho o Firefox superior ao IE
Então Maujor…. cade a sua solução?
Olá
@Rodrigo e @André Mácola
Convido vocês a enviar a solução encontrada para: maujorcss[arroba]maujor[ponto]com.
Minha contribuição segue para seu email Maujor:
Um abraço a todos
Desculpe pela demora, esta meio sem tempo. mas bem, ja mandei um e-mail pra vc.
Boa dica. Vlw!
Abraços,
http://www.galaxhost.com.br