【问题标题】:how to make an image into a link怎么把图片变成链接
【发布时间】:2013-09-11 17:10:13
【问题描述】:

我有一个似乎无法解决的简单问题。

#tps_block {
  height: 45px;
  width: 940px;
}
#tps_point1 {
  width: 351px;
  background: url("http://www.jenierteas.com/templates/default/images/hp_usp.png") 0 0 no-repeat;
  text-indent: -9999px;
  display: block;
  height: 100%;
  float: left;
}
#tps_point1:hover {
  background: url("http://www.jenierteas.com/templates/default/images/hp_usp.png") 0 -45px no-repeat;
}
#tps_point2 {
  width: 284px;
  background: url("http://www.jenierteas.com/templates/default/images/hp_usp.png") -351px 0 no-repeat;
  text-indent: -9999px;
  display: block;
  height: 100%;
  float: left;
}
#tps_point2:hover {
  background: url("http://www.jenierteas.com/templates/default/images/hp_usp.png") -351px -45px no-repeat;
}
#tps_point3 {
  width: 305px;
  background: url("http://www.jenierteas.com/templates/default/images/hp_usp.png") -677px 0 no-repeat;
  text-indent: -9999px;
  display: block;
  height: 100%;
  float: left;
}
#tps_point3:hover {
  background: url("http://www.jenierteas.com/templates/default/images/hp_usp.png") -677px -45px no-repeat;
}
<div id="tps_block">
  <div id="tps_point1"><a href="#">Point 1</a>
  </div>
  <div id="tps_point2"><a href="#">Point 2</a>
  </div>
  <div id="tps_point3"><a href="#">Point 3</a>
  </div>
</div>

想法是并排有3张图片,当鼠标悬停在每张图片上时,图片会变成高亮的,并且图片也是可点击的,这样用户就会被带到其他地方图片被点击了。

我已成功应用悬停效果,但无法使链接正常工作。

有人可以帮帮我吗?

JSFiddle: http://jsfiddle.net/ahmadka/Fjmnt/

【问题讨论】:

    标签: html css image hover


    【解决方案1】:

    如果您能够更改 HTML,只需去掉内部的 div 标记并将完全相同的样式应用于链接本身:

    <div id="tps_block">
      <a href="#" id="tps_point1">Point 1</a>
      <a href="#" id="tps_point2">Point 2</a>
      <a href="#" id="tps_point3">Point 3</a>
    </div>
    

    更新 jsFiddle:http://jsfiddle.net/Fjmnt/7/

    【讨论】:

      【解决方案2】:

      最佳解决方案如果您无法修改 HTML.. 添加以下 CSS。

      #tps_block a {
          display: block;
          width: 100%;
          height: 100%;
      }
      

      这将填充&lt;a&gt;,使整个div 可点击。

      jsFiddle demo

      【讨论】:

        【解决方案3】:
        <div id="tps_block">
          <a href="#"><div id="tps_point1"></div></a>
          <a href="#"><div id="tps_point2"></div></a>
          <a href="#"><div id="tps_point3"></div></a>
        </div>
        

        【讨论】:

        • @JoshC 从 HTML5 开始,这没问题。对于我们这些在 HTML 4.01 上长大的人来说,这看起来很奇怪!
        • 我是在 HTML 4.01 上长大的,而不是切换到 XHTML1.1 而不是 HTML5 ;)
        猜你喜欢
        • 1970-01-01
        • 2011-07-02
        • 2013-10-03
        • 1970-01-01
        • 1970-01-01
        • 2011-06-02
        • 2020-07-07
        • 2017-07-16
        • 2013-03-23
        相关资源
        最近更新 更多