2009-07-24 37 views
0

在我的一個項目中,我使用input[type="button"]將樣式應用於所有按鈕。它在除Internet Explorer 6之外的所有瀏覽器中都能正常工作。它不設置按鈕的樣式。如何將類應用於所有按鈕?

是否有一個解決方案,像按鈕創建一些類,並把它應用到所有按鈕?

我想這個類適用於所有的按鈕,但沒有手動。我認爲有可能爲此使用jQuery,請幫助我解決這個問題?

+0

你能舉一個例子,說IE有什麼問題。我懷疑這可能是一些CSS不正確解釋IE瀏覽器問題。 – RaYell 2009-07-24 07:14:54

回答

5

我平時喜歡不使用JavaScript這一點,所以我加class="text"<input>元素是文本類型的,class="button"<input>元素是按鈕式的,並等等。然後,我可以用input.text

匹配他們,而你不想做手工,我認爲這是更好的做法。如果你還是想用jQuery做到這一點,你做這樣的:

$('input:button').addClass('button'); 
// Or to include <button> elements: 
$('button, input:button').addClass('button'); 

// Text inputs: 
$('input:text').addClass('text'); 
// And so on... 
3

你試過$(":button")

5
$(":button").addClass("yourclassname"); 

這匹配所有按鈕元素和類型按鈕的輸入元素,併爲它們添加類。

+0

`:button`表示`*:button`。我建議將它改爲`input:button`。 – Blixt 2009-07-24 07:17:28

2

你不能在沒有javascript的IE6中自動完成它。這裏是你如何能與jQuery

$(":button").addClass("something"); 
1

,除非你需要它在其他地方加載一個庫或框架,這樣一個簡單的任務,我不會使用jQuery似乎矯枉過正。

I.E.6不理解CSS屬性選擇,正確的,看起來像JavaScript是唯一的出路。

也許你可以使用此代碼玩:

Buttons=Parent.getElementsByTagName("input"); // "Parent" could be "document" or the Id. of a form, fieldset, div etc. 
Button=0; 
while(Button<Buttons.length){ 
    if(Buttons[Button].getAttribute("type")=="button"){ 
     Buttons[Button].className="Whatever_Style_We_Want"; 
    } 
    Button++; 
}; 

我沒有嘗試過或測試過,但片段是東西玩。它甚至可以直接使用!

相關問題