【发布时间】:2017-06-21 15:06:15
【问题描述】:
我必须在<label> 标签内使用<a>。因为有很多css样式在我们目前的系统中只适用于<a>。 <a> 标签不链接到任何页面,但用于样式/悬停。
见下面的代码:
<input type="checkbox" id="my-id">
<label for="my-id"><a href="javascript:void(0)">Some text</a></label>
但是当点击“一些文本”时,它不会切换复选框状态。
我在<a> 标签上尝试了$.preventDefault(),但没有用。
我应该怎么做才能使<a> 表现得像一个标签?
【问题讨论】:
-
@DavidThomas HTML5 spec 允许
<a>在<label>内。 -
在
a元素中有href属性的任何原因?如果删除它,单击文本将切换复选框。 -
标签中允许使用
<a>标签,仅用于锚定或实际链接。如果您希望它看起来像一个链接,请将相同的样式应用于标签或标签内的<span>。不要为了外观而贬低链接。 -
@John:我的立场是正确的! (有点震惊,但绝对纠正了)谢谢!
-
@LGSon
href属性在a元素上不是必需的。以前版本的规范包含一个模棱两可的表述,但在当前草案中是 was made clear。
标签: javascript jquery html