[...]标签不被IE8识别

时间:2012-04-16 14:29:19

标签: html css internet-explorer internet-explorer-8

我有以下css:

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

使用html:

<span><label for="Length">Length:</label></span>
<span><input type=text id="Length"></span>

它在IE8中不起作用。 标签[for = ...] 无法识别。任何解决方法?

感谢。


更新

我的问题出了问题所以现在我更新了。有解决方案吗谢谢!

5 个答案:

答案 0 :(得分:3)

添加<label>元素,其中包含for="Length"属性。

(并确保您有一个触发标准模式的Doctype)

答案 1 :(得分:3)

元素必须是标签才能在css中将其作为标签进行匹配尝试:

<label for="Length">Length:</label>
<span><input type=text id="Length"></span>

答案 2 :(得分:1)

IE 8(或IE 9)不支持Quirks Mode中的属性选择器。这就是为什么在Quentin的答案中添加一个合适的doctype声明,修复了IE 8上的问题。为此目的,最简单的doctype是<!doctype html>

在IE 7上,没有任何帮助,因为它只是缺乏支持,而不是在Quirks模式中掩盖它。

id元素上使用label属性更安全,例如<label id=foo for=Length>,并在CSS中使用id选择器,例如#foo。这些选择器适用于所有支持CSS的浏览器。

答案 3 :(得分:0)

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

<span>Length:</span>
<label class='label1' for='Length'><input type=text id="Length"></label>

答案 4 :(得分:-1)

它适用于IE8 ..不依赖于浏览器。检查!doctype html中的文件。因此它是一个属性,它起作用。