Etiqueta para no reconocida por IE8

Tengo el css a continuación:

span label[for=Length] { width: 90px; display: block; text-align:right; margin-top: 2px; margin-right: 5px; } 

con el html:

   

No funciona en IE8. La etiqueta [for = …] no se reconoce. ¿Alguna solución?

Gracias.


ACTUALIZAR

Cometo un error en mi pregunta, así que ahora actualicé. ¿Alguna solución? ¡Gracias!

IE 8 (o IE 9 para el caso) no admite los selectores de atributos en el modo Quirks . Esta es la razón por la que agregar una statement de doctype adecuada, como se sugiere en la respuesta de Quentin, soluciona el problema en IE 8. El doctype más simple para este propósito es < !doctype html> .

En IE 7, nada ayuda, ya que simplemente carece de soporte, en lugar de tenerlo enmascarado en modo Quirks.

Por lo tanto, es más seguro usar un atributo de id en el elemento de label , por ejemplo, , y usar un selector de id , como #foo , en CSS. Tales selectores funcionan en todos los navegadores habilitados para CSS.

Agregue un elemento con un atributo for="Length" .

(Y asegúrate de tener un Doctype que active el Modo Estándar)

El elemento debe ser una etiqueta para poder coincidir con una etiqueta en css. Intente esto:

   
 .label1 { width: 90px; display: block; text-align:right; margin-top: 2px; margin-right: 5px; } Length:  

Funciona en IE8 .. No depende del navegador. Verifique el archivo! Doctype html. Por eso es un atributo, funciona.