2014-11-18 3 views
5

Ich möchte ein allgemeines Styling für alle Elemente erstellen, die der Benutzer auswählt (entweder mit der Maus oder durch Antippen auf einem Touchscreen) und dann Text mit einem Cursor eingeben. Dazu gehören:Gibt es einen CSS-Selektor für jedes Feld, das der Benutzer eingibt?

  • <input>
  • <input type='text'>
  • <textarea>
  • <input type='password'>
  • <another element that I didn't know existed that you can type into>

Wie Sie (und andere Beispiele wahrscheinlich), aufgrund der <textarea> sehen kann (was fällt in dieser Kategorie) und <input type='submit'> (was nicht) kannst du nicht einfach alle <input> auswählen.

Gibt es dafür einen speziellen CSS (Pseudo?) - Selektor?

+1

Enthält dies ['contenteditable'] (http://www.w3.org/TR/html5/editing.html#contenteditable) Regionen? – Sampson

+1

Kurze Antwort ist nein, aber bedenken Sie, dass für einige Eingabearten, ob ein Benutzer Text mit einem Cursor eingeben kann, hängt davon ab, welchen Browser sie verwenden. – Alohci

Antwort

3

Nein, gibt es nicht.

Entweder Sie gehen mit Listen

input, textarea {...} 

oder Sie verwenden eine CSS-Prä-Prozessor (z sass) und machen Sie sich eine mixin oder eine Funktion, die alle diese Typen behandelt. Aber Sie werden es nicht schaffen, all diese Elemente irgendwann zu definieren.

0

Nein, es gibt kein Feld für diese, aber Sie können Selektoren mit Komma kombinieren und sie alle zusammen wie dieser Art:

input[type="text"], input[type="search"], input[type="password"], textarea { 
    /* your styles here */ 
} 

Ich denke, dies ist der einzige Weg, es zu tun.

+0

Ich wusste nicht, dass es einen Typ = "Suche" gab, der den Wert eines Selektors wie diesem weiter demonstriert. –

+0

vielleicht 'input [type! =" Submit "], textarea'? –

+0

@BrianGlaz - 'type =" image "' (und möglicherweise andere) wird einen Schraubenschlüssel in die "nicht senden" Arbeiten werfen. – DocMax

0

Sie können einfach die Pseudoklasse: focus in CSS verwenden, um ein beliebiges ausgewähltes HTML-Element auszuwählen.

CSS:

:focus { 
    /* whatever you want to do to all selected elements */ 
} 

hier ein JS Geige ist das zeigt, wie es funktioniert:

http://jsfiddle.net/vbdgenwz/

+1

Das ist wahr, aber es ist nicht, was OP fragt. Der Fokus bezieht sich auch auf mehr als nur Dinge, in die man schreiben kann (wie normale Hyperlinks oder irgendetwas mit einem Tabindex). –

+1

ah ja, event a '