2009-07-24 7 views
0

私のプロジェクトでは、input[type="button"]を使ってすべてのボタンにスタイルを適用しました。 Internet Explorer 6を除くすべてのブラウザで正常に動作します。ボタンのスタイルは変更されません。クラスをすべてのボタンに適用するにはどうすればいいですか?

ボタン用のクラスを作成してすべてのボタンに適用するなどの方法がありますか?

そのクラスをすべてのボタンに適用したいが、手動ではない。私はこれにjQueryを使用することが可能だと思います、これで私を助けてください?

+0

IEに何が問題なのか、例を挙げてください。私はこれがおそらくIEの問題で正しく解釈されないいくつかのCSSだと思う。 – RaYell

答えて

5

I通常、このためには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

+1

次に、

+0

ボタン要素は選択されません。 – rahul

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++; 
}; 

を私が試したか、それをテストしたが、スニペットは、一緒にプレイするものではありませんしました。それは箱からすぐに働くかもしれません!

関連する問題