在IE 9中输入单选按钮悬停问题

时间:2011-06-10 17:59:35

标签: javascript html css

我在IE9中遇到问题:每当我将鼠标悬停在我的顶级包装器div上时,第一个单选按钮就会像悬停在上一样。因此,即使我按下最后一个无线电输入,如果我点击包装内的任何地方,收音机将返回到第一个。只要我将鼠标悬停在包装器div上,第一个无线电输入上的淡蓝色就会变回原来的灰色。

enter image description here

我的页面在FF,Chrome和IE-Compatability模式下按预期工作。

我尝试使用输入创建一个简单的页面,但无法在我的大型网页中重现问题。

非常感谢任何可能导致此问题和/或如何阻止它的输入。

编辑#1:mycode:

<div id="wrapper">
...
<div id="region_sel_type">
    <input type="radio" id="optLine" name="radio_region_sel_type" value="Line" /><label id="lblForOptLine" for="optLine" title="Line" unselectable="on"></label>
    <input type="radio" id="optPoint" name="radio_region_sel_type" value="Point" /><label id="lblForOptPoint" for="optPoint" title="Point" unselectable="on"></label>
    <input type="radio" id="optPolygon" name="radio_region_sel_type" value="Polygon" /><label id="lblForOptPolygon" for="optPolygon" title="Polygon" unselectable="on"></label>
    <input type="radio" id="optList" name="radio_region_sel_type" value="List" /><label id="lblForOptList" for="optList" title="Input Coordinates" unselectable="on"></label>
    <input type="radio" id="optUploadKML" name="radio_region_sel_type" value="KML" /><label id="lblOptUploadKML" for="optUploadKML" title="Upload KML" unselectable="on"></label>
    <input type="radio" id="optOpen" name="radio_region_sel_type" value="Open" /><label id="lblForOptOptn" for="optOpen" title="Open Saved ROI" unselectable="on"></label>                   
</div> 
...
</div>

解: 在“包装”div中的某个地方我有一个自动关闭标签IE9不支持(即使他们应该)

<label id='x'/>

1 个答案:

答案 0 :(得分:2)

您所描述的是label标记的行为。使用标签id属性中指定的for标签标签就像悬停和点击目标一样。

您无意中将一个大标签应用于一个特定的单选按钮,或者其中一个未正确关闭,导致它包裹整个div

您是否检查了所有label代码,以确保没有错误关闭?


既然你已经解决了问题,我想我会在这里添加关于HTML 5中自动关闭标签的说明。

XHTML开始以严格的XML来诱惑世界。现在我们处于HTML 5世界,很容易相信这仍然是真的。但是, HTML 5不知道/>是什么。相反,它会尝试为您自动关闭一些标记。

因此,在您的情况下,听起来大多数浏览器都将隐式</label>置于预期位置,但是一个浏览器将其置于上下文之外。无论哪种方式,他们都可能都不关心/>

还记得我们的老朋友<p style="color:red;"><div>Why am I not red?</div></p>吗? HTML将</p>放在<div>之前,因为<p>标记内不允许使用块元素。

要做的最好的事情就是不要习惯在{@ 1}}除了始终没有内容的元素(/>linkbr等 - 即便如此,你可能只想为代码可读性做到这一点,因为在解析时,它绝对没有区别。)

此处有更多信息:http://tiffanybbrown.com/2011/03/23/html5-does-not-allow-self-closing-tags/