/ / IE8 CSS / error de combobox (texto que aparece extraño) - css, internet-explorer-8

IE8 error de CSS / combobox (texto que aparece extraño) - css, internet-explorer-8

Estoy tratando de identificar este error. ¿Es este un problema conocido ya o es totalmente nuevo? ¿Existe alguna solución (como un zoom: 1 o una posición: relativa que pueda agregar para solucionarlo), idealmente sin modificar el html aquí, sino simplemente agregarlo.

Si muestra el siguiente html en IE8 veráEl texto de la selección (cuadro combinado), se muestra dos veces. Una fuera del cuadro combinado. Esto está arruinando el flujo de mi documento (sin mencionar que se ve raro).

<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>

Respuestas

3 para la respuesta № 1

Esto es definitivamente un error, ya que eres bonitaexplícito en las reglas de estilo de diseño. Pero para empezar, también es un arreglo realmente extraño. Si descubre el div oculto, agrega texto O oculta el div debajo del selector, el problema desaparece. Mi mejor estimación es que, dado que tiene elementos de nivel de bloque superpuestos con uno oculto y uno vacío, IE ignora el flotador y trata de colocarlos uno encima del otro, lo que está forzando la opción hacia abajo, pero dado que la selección permanece en su lugar, también muestra la opción dentro de la selección.

Muy extraño y una captura muy fresca. Sus opciones tal como las veo es agregar algo de contenido al último div (espacio sin interrupciones, probablemente) u ocultar el div (pantalla: ninguno), o ambos.

En Firefox, ese último div tampoco es flotante.a la derecha y se superpone con la selección (se puede ver al delinear los elementos a nivel de bloque con la Barra de herramientas del desarrollador), lo que me hace pensar que Firefox es simplemente mejor para manejar los elementos de nivel de bloque superpuestos.

Si configura el último div para que tenga un borde, verá que no está flotando a la derecha del div principal.