CSS按钮在IE中不起作用,但在FF中起作用

时间:2011-10-23 02:49:07

标签: css internet-explorer

我一直在网上寻找解决方案,为什么IE7没有正确打开链接,例如

    <a href="http://www.google.com"><button class="class1">Google</button></a>

IE7不喜欢吗?

我听说我应该使用jquery吗?但没有人链接到任何文章。

5 个答案:

答案 0 :(得分:2)

根据W3C关于anchor (<a>) tags<button> tags的规范,您应该可以做到这一点,但according to a quick Google search,您不能和/或不应该这样做,它在Internet Explorer中不起作用。

This article实际上建议添加Javascript,因此链接也可以在IE中打开:

<a href="http://www.expertsguide.info/"><button type="button" onclick="window.location('http://www.expertsguide.info/')">Click Me to go to Experts Guide</button></a>

答案 1 :(得分:1)

虽然可以,但你不应该在锚点(<button>)内有一个按钮(<a>)。

向按钮添加事件处理程序,如下所示:

<input type="button" value="Google" onClick="javascript:location.href = 'http://google.com';" />

注意:出于各种原因,您应该考虑不这样做。您可以(并且应该)将<a>元素设置为按钮的底线。

答案 2 :(得分:0)

最好不要在超链接中使用按钮。

将超链接设置为按钮的样式。

试试这些

http://www.webresourcesdepot.com/css3-buttons-10-awesome-ready-to-use-solutions-all-related-tutorials-you-need/

答案 3 :(得分:0)

试试这个:

<script>

$(document).ready(function() {

   $('.class1').click(function() {
      window.location = $(this).parent().attr('href');
      return false;
   }

});

</script>

或者只需删除按钮标记并使用:

<script>

$(document).ready(function() {

   $('a').click(function() {
      window.location = $(this).attr('href');
      return false;
   }

});

</script>

答案 4 :(得分:0)

要独立于JavaScript(因此它也可以在禁用JS的浏览器上运行,与此处的许多其他答案相反),我建议以常规方式将其包装成<form>并使其成为<button type="submit">(或<input type="submit">)代替。

<form action="http://www.google.com">
  <button type="submit" class="class1">Google</button>
</form>

<form action="http://www.google.com">
  <input type="submit" value="Google" class="class1" />
</form>