我想使用整个div作为链接..而不使用"onclick"
这可以通过简单的href
吗?
由于
答案 0 :(得分:19)
不,div
元素不能具有href
属性,也不会像链接一样。您可以在HTML5中使用以下内容:
<a href="#"><div></div></a>
然而,并非所有当前一代浏览器(尤其是Firefox 3.6)都支持此功能。另一种方法是添加一个绝对定位的a
元素,其宽度和高度均为div
:
div a {
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
}
这是有效的HTML4,但它当然不适用于旧版本的IE。否则应该完成你想要的。请参阅:http://www.jsfiddle.net/uRh7j/
答案 1 :(得分:17)
<a>
与style="display:block"
,<div>
,其行为应与<div>
完全相同,以替换{{1}}
答案 2 :(得分:4)
简单的答案是否定的,您可以使用onclick
与css cursor:pointer
来获得相同的功能。
答案 3 :(得分:2)
根据HTML规范(HTML 4.01,草案5和XHTML 1,1.1),锚标记<a>
不能包含<div>
标记。
答案 4 :(得分:1)
围绕它缠绕锚。
<a href="#"><div></div></a>
答案 5 :(得分:0)
如果不使用onclick事件,我认为这是不可能的。您可以使用display:block;
将链接显示为div而不是其他内容。
答案 6 :(得分:0)
为什么不使用jquery这样的javascript框架,让div没有onclick事件但是在jquery中声明一个事件,如下:
<script>
$(function(){
$(".click").click(function{ alert('clicked!'); });
});
</script>
<div class="click"></div>
只差我2美分。感谢。
答案 7 :(得分:0)
您可以通过创建一个小的透明PNG(例如,10px * 10px)并使用CSS将PNG的宽度和高度设置为100%来实现此目的。然后,您可以使用img
标记包装a href
标记。
这是HTML:
<div id="YourHeader">
<a href="http://example.com"><img src="/path/to/header10x10.png" /></a>
</div>
这是CSS:
#YourHeader img {
width: 100%;
height: 100%;
}
如果#YourHeader
为空div
,其唯一目的是通过其background-image
属性显示标题图片,则此功能特别方便。