2011-08-26 153 views
0
input.icon 
{ 
    border: 0;  
    cursor: pointer; 
    margin: 0; 
    padding: 0; 
    width: 16px; 
    height: 16px; 
    text-indent: -1000em; 
} 
input.edit {   
    background: transparent url('/edit.png') no-repeat center top; 
} 

在等的元件:輸入提交標籤被顯示值IE屬性文本「提交查詢」

<input type="submit" class="icon edit" onclick="...." /> 

它呈現優良在Firefox,沒有圖像也上的文字。在IE中它顯示了value屬性的文本。

這是爲什麼? 其實我甚至沒有設置值屬性,它是'提交查詢'的默認值。

另外,我還以爲我的CSS能更具體這樣做:

input.icon { 
... 
} 
input.icon .edit { 
... 
} 

但是,這並沒有爲我工作不知道爲什麼,所以我換了第二個定義太:

輸入.edit { .. }

爲什麼input.icon .edit沒有工作?

我可以把這些樣式放在div元素上嗎?有什麼不同?

+0

你的html是什麼樣的。該按鈕是否具有圖標和編輯類? –

+0

是的,見上面,我的元素沒有正確渲染,所以我編輯它。 – codecompleting

回答

1

你在那裏有幾個問題。對於第一個。我沒有看到這個問題在IE8:

http://jsfiddle.net/rfYrq/

我沒有看到在IE8中的文本。


問題2: 「你爲什麼不input.icon .edit的工作?」

input.icon .edit的含義是,與類的edit與類的icon輸入元件的任何元件。你真正想要的是editicon類的任何輸入。這將是這樣的:

input.icon.edit


問題3: 「我能不能也把這些樣式的div元素嗎?」

是的。如果你用自己的css覆蓋按鈕的樣式,並且顯然用onclick覆蓋按鈕的功能,則可以根據自己的情況使用div或span或其他元素。