请看一下这个小提琴
如何使背景图像可点击?当点击"参加调查"时,会转到一个新的页面。
<div style="height:300px;width:300px;border-style:solid;border-width:5px;background-image:url('http://cdn.survey.io/embed/1.0/right_top_blue.png'); background-repeat:no-repeat;background-position:right top;">
By default, the background-image property repeats an image both horizontally and vertically.
</div>
Javascript或CSS都是首选。
编辑:我不想使用图像浮动到右角。
你不应该这样做。
如果用户关闭了样式,或者正在使用屏幕阅读器,该怎么办?他们也应该能够接受调查。
div{position:relative;}
a {display:block; width:120px; height:120px;
position:absolute;
top:0; right:0;
text-indent:-9999px;
background-image:url('http://cdn.survey.io/embed/1.0/right_top_blue.png');
background-repeat:no-repeat;background-position:right top;}
演示
这是一个使用相对位置+绝对的简单示例
http://jsfiddle.net/RZWCS/
你也可以考虑绝对定位链接,并使用该图像作为链接背景(链接的文本可能与图像上显示的文本相同,并使用负文本缩进或类似技术向外移动)
查看此处了解更多信息:http://bluedogwebservices.com/css-trick-turning-a-background-image-into-a-clickable-link/
此外,您还可以使div相对,然后只需将用锚点包裹的图像放在右上角。
编辑
Html
<div class="wrapper">
<a href="/"><img src="yoursrc" alt="description"/></a>
<p>Some other text regularly positioned.</p>
<div>
CSS:
.wrapper
{
position:relative;
width:500px;
height:500px;
}
.wrapper a
{
position:absolute;
top:0px;
right:0px;
}
我可能错了,但我不认为CSS背景可以绑定事件。我个人会用一个透明的div来覆盖它,或者使用一个真实的图像来挖掘DOM元素的事件。
如果有人能做到这一点,我会很感兴趣:)
只需将div转换为<a>
元素?
<a href="mysite.com"
style="display: block;
height:300px;
width:300px;
border: 5px solid;
background: url('http://cdn.survey.io/embed/1.0/right_top_blue.png') right top no-repeat;">
<a/>