2011-07-18 433 views
1

所以,我有一個在IE8鏈接懸停狀態的問題。代碼如下:IE8鏈接背景顏色不改變懸停

<div id="navigation"> 
    <a href="/" class="home">Home</a> 
</div> 

而CSS:

#navigation { 
    float: right; 
    height: 29px; 
    margin: 50px 0 0 23px 
} 

#navigation a { 
    color: #FFF; 
    float: left; 
    font-size: 120%; 
    height: 25px; 
    margin-right: 7px; 
    padding: 2px 10px; 
    text-align: center; 
    width: 104px; 
} 

#navigation a.home { 
    background-color: #f4e034; 
} 

#navigation a.home:hover { 
    background-color: #fffbd4; 
} 

現在,這部作品在我在測試其他瀏覽器精器(Chrome,Safari瀏覽器,FF,IE6和IE7),它只是不會更改懸停時IE8中鏈接的背景顏色。

我曾嘗試將display: blockdisplay: inline-block添加到a元素。我也嘗試在懸停標記中的背景顏色之後添加!important。我也確保CSS中沒有其他元素會影響這一點。

使用谷歌搜索這個問題給了我一堆關於IE8測試版的東西,事實並非如此。它也給了我菜單相關鏈接的答案,但事實並非如此。它爲我提供了不受背景色影響的事情的答案。它給了我改變字體顏色作品的東西,而不是背景顏色(在我的情況下都不起作用)。

只是想知道是否有其他人注意到這個問題,並有他們可以提供這方面的東西。讓我知道,提前謝謝。

+0

好奇,你有沒有嘗試在懸停狀態下添加邊框(或任何其他樣式,如font-weight:bold;),看看是否會生效? – pixelfreak

+0

我想知道,是否刪除其默認背景顏色聲明導致它的工作? (如刪除#navigation a.home {[...]}中包含的規則) – Nightfirecat

+0

我在IE8中測試了這段代碼,它工作正常。你確定其他地方沒有衝突的代碼嗎? http://jsfiddle.net/N4zUN/ – Tank

回答

0

我看起來像你的問題。我盡你所能地嘗試了各種方式,但沒用。

我最終的解決方案是爲需要懸停的元素設置背景顏色,然後運行。

當時我感到震驚,我不知道爲什麼現在仍然如此。

0

您的HTML頁面上是否指定了DOCTYPE?這看起來很明顯,但我在IE8中遇到了與懸停狀態類似的問題 - 特別是在編輯舊網站時。

對我來說,解決辦法是添加打開HTML標記上方DOCTYPE HTML頁面

DOCTYPE HTML PUBLIC上! 「 - // W3C // DTD XHTML 1.0過渡// EN」 「http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd

我希望這有助於!