0

的問題

我用2種生鍵盤(字母,數字),但是當我測試我的劇本似乎是繼承的錯誤使用CSS在IE 7中創建的鍵盤。我使用了類.backspace以隔離兩種類型的密鑰,但他們仍然.backspaceIE 7 - 對CSS類繼承的Bug

代碼繼承背景位置

CSS代碼

key 

.keyboard-table.numeric .key-element{background-position: 5px -90px} 
.keyboard-table.numeric .key-element.keypressed{background-position: 5px -210px} 

.keyboard-table.numeric .backspace{ background-position: -295px -90px} 
.keyboard-table.numeric .backspace.keypressed{background-position: -295px -210px;} 

Html代碼

<div class="keyboard-column"> 
    <span class="key-element" ascii-code="48" style="margin: 5px 0px 0px 5px; width: 300px; height: 112.5px;"> 
    0 
    </span> 
</div> 
<div class="keyboard-column"> 
    <span class="key-element backspace" style="margin: 5px 0px 0px 5px; width: 640px; height: 112.5px;"> 
    ← Apagar 
    </span> 
</div> 

請問,我該如何解決這個錯誤?

回答

1

我不認爲IE7支持並排兄弟選擇器。因此,這些都不行......

.backspace.keypressed 

您可能需要添加.keypressed鍵盤柱代替,然後使用..

.keypressed .backspace 
+0

非常感謝。其作品 –

0

IE7支持多類選擇。

我懷疑問題是你沒有在你的HTML中使用DOCTYPE,所以瀏覽器渲染切換到怪癖模式,這是你想避免的。

您應該簡單地將其添加爲您的HTML的第一行:

<!DOCTYPE html> 

這是HTML5的DOCTYPE,但它並沒有真正的問題,它會在IE7中正常工作,並觸發標準模式,而不是怪癖模式。