IE8 CSS/Bugbox Bug (texto estranho)
-
05-07-2019 - |
Pergunta
Estou tentando identificar esse bug. Isso já é um problema conhecido ou é totalmente novo? Existe uma solução alternativa (como um zoom: 1 ou posição: parente que eu posso adicionar para corrigi -lo?), Idicey sem modificar o html aqui, mas apenas adicionar a ele.
Se você exibir o HTML abaixo no IE8, verá o texto na seleção (caixa de combinação), será exibida duas vezes. Um fora da caixa de combinação. Isso está bagunçando o fluxo do meu documento (para não mencionar a aparência estranha).
<html><body>
<div style="width: 800px;">
<div style="float: right" >
</div>
<div style="display: none">
ijklmno
</div>
<div style="float:left">
<select>
<option>abcdef</option>
</select>
<div style="float: right">
</div>
</div>
</div>
</body></html>
Solução
Isso é definitivamente um bug, já que você é bastante explícito nas regras do estilo de layout. Mas também é um arranjo realmente estranho para começar. Se você desfrutar da div, adicione texto ou oculte a div abaixo da seleção, o problema desaparece. Meu melhor palpite é que, como você tem elementos de nível de bloco sobrepostos com um oculto e um vazio, o IE está ignorando o flutuador e tentando encaixá -los um no outro, o que está forçando a opção, mas desde que a seleção permanece no lugar, Está mostrando a opção dentro da seleção também.
Muito estranho e uma captura muito legal. Suas opções como eu as vejo são adicionar algum conteúdo ao último divisão (provavelmente não quebrar o espaço, provavelmente ou ocultar o Div (exibir: nenhum) ou ambos.
No Firefox, essa última div também não está flutuando à direita e se sobrepõe à seleção (você pode dizer descrevendo elementos no nível do bloco com a barra de ferramentas do desenvolvedor), o que me faz pensar que o Firefox é apenas melhor em lidar com elementos de nível de bloco sobrepostos.
Se você definir a última div para ter uma borda, verá que ela não está flutuando à direita da divisão principal.