2012-04-19 147 views
1

我使用基石js渲染我的用戶界面。除此之外,我使用reset.css來清除我的樣式。我有這個在我的復位CSS:IE7 + css類繼承

ol, ul { 
list-style-image:none; 
list-style-position:outside; 
list-style-type:none; 
} 

而且在我的風格文件:

.wysiwyg ol, .wysiwyg ul 
{ 
    list-style: inherit !important; 
    padding-left: 15px; 
    margin-bottom: 10px; 
} 
.wysiwyg ol li 
{ 
    list-style: decimal outside; 
} 
.wysiwyg ul li 
{ 
    list-style: disc outside; 
} 

而問題是,對列表中的樣式不適用於IE7。但是,當我在仿真模式下使用IE9並按下'編輯'按鈕並且保存標記時,一切都會變爲OKAY。 所以我認爲這是一個css類鏈接和繼承的問題。 有人可以提前幫助如何強制IE7使用我的CSS類嗎?

回答

1

IE < 8存在繼承問題。解決這個問題的最簡單方法是重新聲明樣式而不是繼承,如果這對您是可能的。

你也可以嘗試使用ie7-js,它試圖使IE7的行爲像一個符合標準的瀏覽器。它工作的很好,但並不完美:使用重置樣式表時可能會遇到問題。試試看看它是否適合你。

第三種可能性是利用IE的CSS表達式像這樣的(注:這是從我的頭直類型的,沒有測試過 - 但你應該明白我的意思):

list-style:inherit; /* standards-compliant browsers */ 
//list-style:expression(this.parentNode.currentStyle['listStyle']); /* IE */