這是我能做的最好的。唯一的限制是只能有一行文字。但是,您可以很容易地將其轉換爲執行一些不同的操作,例如生成一個內部爲div的80%寬度的div,然後居中該div以允許使用段落文本。
JSBin示例在底部。
CSS
.vpbutton {
padding:4px;
background-color:#EFEFEF;
}
.userbox img{
padding:8px;
background-color:#EFEFEF;
border:1px solid #e5e5e5;
}
.userbox img:hover{
opacity:.2;
}
.hover-text {
display:none;
position:absolute;
}
.userbox img:hover ~ .hover-text {
border:1px solid #000;
top:0;
left:0;
display: block;
text-align:center;
}
JS
$(function() {
$('img[rel="hover-text"]').each(function() {
this$ = $(this)
console.log((this$.outerWidth() - this$.innerWidth()))
this$.parent().find('.hover-text').css({
'margin': (this$.outerWidth(true) - this$.width())+'px',
'top':0,
'left':0,
'height': (this$.height())+'px',
'width': (this$.width())+'px',
'line-height':(this$.height())+'px'
})
})
})()
HTML
<div class="userbox">
<img src='http://www.clonescriptsdb.com/scriptimages/inout-search-engine-google-like-search-engine-788.jpg' rel="hover-text">
<div class="hover-text">asd</div>
</div>
http://jsbin.com/azuyol/13/edit
UPDATE正確計算邊距/填充/邊框。
在IE6中使用jQuery將比CSS':hover'更好地支持。 – 2012-08-02 20:58:12
我們真的還在爲IE6編碼嗎?我會建議忘記這一點,並希望這迫使用戶升級(優先爲非IE瀏覽器);-) – Pevara 2012-08-02 21:21:12