2011-05-04 60 views
11

的問題是,當我宣佈爲一個「包裝」元件標題屬性中,工具提示示出了當光標落在「內容」元素作爲內部好。我如何防止這種(繼承)發生?HTML:繼承父[標題]屬性停止子元素

<style> 
    #content{ margin:25px;} 
</style> 

<div id='wrapper' title='example'> 
    <div id='content'> 

    </div> 
</div> 

(我只想工具提示顯示出來之間的「內容」和「包裝」元素的邊緣,而不是兩個)

+1

根據這個源[鏈接](https://developer.mozilla.org/en/DOM/element.title),你必須設置內部DIV標題爲好,白色的字符反正 - 。你要做的是爲Firefox可惜的是,它並不能很好地在IE – mj82 2011-05-04 10:37:05

+2

工作@ mj82不幸的是,導致出現在IE – Flash 2011-05-04 10:40:37

回答

5

我不認爲這是純CSS或HTML可能。

破解這是使用客戶端代碼的一種方式。基本普通的JavaScript例如:

window.onload = function() { 
    var oDiv = document.getElementById("content"); 
    oDiv.onmouseover = function() { 
     this.parentNode.setAttribute("old_title", this.parentNode.title); 
     this.parentNode.title = ""; 
    }; 
    oDiv.onmouseout = function() { 
     this.parentNode.title = this.parentNode.getAttribute("old_title"); 
    };  
}; 

這將「清除」父div鼠標時在標題的內容,並恢復標題時鼠標離開內容。

現場測試案例:http://jsfiddle.net/UASPZ/

+0

好主意空白提示,但我不得不從頭開始整個實現,因爲它在鼠標觸發了比預期更頻繁,由於內部的#內容的其他元素(我可以用e.stopPropagation();每一個,我想不管怎樣,我會考慮。它) – whamsicore 2011-05-05 23:32:00

+0

@whamsicore對不起,我忍不住更多..如果你需要任何進一步的幫助,這個感覺免費噸o問。 :) – 2011-05-06 07:18:48

+0

就像一個魅力:) – T4NK3R 2012-03-29 13:18:45

4

我有同樣的問題。我發現你可以通過給子元素一個虛擬標題title=" "來防止這種情況。

+0

至少這在firefox 4中有效;)我剛剛發現,那個chrome不喜歡它。和Opera完全忽略=( – mightyplow 2011-05-18 17:02:06

2
這裏

同樣的問題。

發現,指定title=' '作品Chrome和Firefox但示出了惱人的工具尖端與IE一個空間。 title=''適用於IE,但完全被Chrome和FireFox忽略,從而顯示父母的工具提示。

沒有想出如何使跨瀏覽器:(