将Div变为Link

use*_*est 5 html css

我正试图把div变成一个链接.下面的代码在firefox中工作正常但在IE中鼠标指针不响应链接.有没有解决的办法?谢谢.

<html>
<head>
<style type="text/css">
.test{
    width:100%;
    height:100px;
    background:#666666;
}
</style>
</head>

<body>
<a href="http://www.google.com">
    <div class="test">
        kjlkjlkjkljl
    </div>
</a>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Gui*_*dre 8

为什么要使用div链接?

你不能只把你的链接显示为块吗?

a{
  display:block;
}
Run Code Online (Sandbox Code Playgroud)

或者使用a span而不是a div.


Aar*_*ieb 5

正如 Welbog 所指出的,<a><div>元素应该颠倒:

<div class="test">
    <a href="http://www.google.com">
        Lorem ipsum
    </a>
</div>
Run Code Online (Sandbox Code Playgroud)

然后在您的样式中,您可以使<a>标签扩展以填充整个 div:

.test a {
    display: block;
    width: 100%;
    height: 100%;
}
Run Code Online (Sandbox Code Playgroud)


Dav*_*mas 1

我认为 IE 在这种情况下实际上做出了正确的响应。

Adiv是块级元素;因此它不应该包含在内联元素中,例如a. 如果您使用 a span(代替div),这在 IE 和 Firefox 中都有效吗?

如果你想让它看起来像一个链接(就光标而言),那么你可能需要使用:

a > div, /* please change your mark-up to the following */
a > span {cursor: hand; /* for earlier versions of IE */
          cursor: pointer; /* for, I think, IE 7+ and FF etc. */
}
Run Code Online (Sandbox Code Playgroud)