【发布时间】:2011-06-10 16:01:45
【问题描述】:
我有一张图片是一个链接。当用户将鼠标悬停在链接上时,我想显示不同的图像。
目前我正在使用此代码:
<a href="http://twitter.com/me" title="Twitter link">
<div id="twitterbird" class="sidebar-poster"></div></a>
div.sidebar-poster {
margin-bottom: 10px;
background-position: center top;
background-repeat: no-repeat;
width: 160px;
}
#twitterbird {
background-image: url('twitterbird.png');
}
#twitterbird:hover {
background-image: url('twitterbird_hover.png');
}
但是我遇到了很多问题:div 没有选择 CSS 规则(当我在 Firebug 中查看该元素时,它没有显示相关的 CSS 规则)。
也许这是因为(据我所知)这是无效的 HTML:您不能在 <div> 周围放置 <a>。但是,如果我切换到<span>,那么我似乎会遇到更大的问题,因为you can't set a height and width on a span reliably。
帮助!我怎样才能做得更好?
【问题讨论】:
-
实际上我认为现在将
<a>放在<div>周围是允许的。 -
哦,好吧...在那种情况下,知道为什么 CSS 没有被拾取吗?我认为如果我在元素上使用 id 并在 CSS 中使用 # ,它总是会选择它。
-
如果您使用的是 HTML5 文档类型,则块级链接很好。 html5doctor.com/block-level-links-in-html-5
-
您使用的是什么文档类型?在html5
aelements can contain block level elements.