CSS Checkboxen & amp; Radio-Buttons, wenn die Eingabe ist innerhalb Label?

Ich gesucht habe ausgiebig auf hier für eine Antwort auf diese, aber noch nicht ganz kommen über das, was ich Suche. Fand diese CSS - How zum Stil einer Ausgewählten Radio-Buttons Label? aber die Antwort einbezogen änderung des markup, und das ist etwas, was ich vermeiden möchte, das erkläre ich weiter unten.

Ich versuche, fügen Sie benutzerdefinierte css3 Checkboxen und radio-buttons, um meine XenForo-forum-Thema, und alle tutorials, die ich gelesen habe auf dem Etikett nach der Eingabe:

<input type="checkbox" id="c1" name="cc" />
<label for="c1">Check Box 1</label>

Jedoch in XenForo das markup, der Eingang ist im inneren des Etiketts:

<label for="ctrl_enable_rte">
<input type="checkbox" name="enable_rte" value="1" id="ctrl_enable_rte" {xen:checked "{$visitor.enable_rte}"} />
{xen:phrase use_rich_text_editor_to_create_and_edit_messages}
</label>

Sah ich in, warum dieses ist, aber nicht finden, alles, was mit benutzerdefinierten css-Checkboxen/radio-buttons, wenn das markup ist auf diese Weise. Ich möchte vermeiden, dass änderungen der markup, weil ich den Umgang mit einem forum-system hier, und das würde bedeuten, die Bearbeitung einer Reihe von Kern-Vorlagen... die müsste ich dann aktualisieren Sie die Markierung jedes mal, wenn forum software, ein update (vorausgesetzt, die Vorlagen geändert).

Ich habe versucht, erstellen Sie CSS-Regeln, die funktionieren würde, mit dieser Art von markup, aber bisher habe ich erfolglos gewesen. Ich bin nicht allzu erfahren mit CSS, nicht jeder Selektor gespeichert sind, und pseudo-Klassen sind noch ziemlich Fremd für mich, ich hatte gehofft, jemand hier könnte etwas Licht auf, wenn dies möglich sein wird, und wenn ja, wie könnte ich es angehen. Ich habe bereits meinen sprite fertig, ich muss nur Abbildung der CSS aus.

Mein Hauptproblem ist, ich kann nicht herausfinden, wie zu wählen Sie das Etikett aus (nur die labels der mit diesen inputs natürlich). In der Regel so etwas wie

input[type="checkbox"] + label

verwendet wird, aber wenn das label nicht nach dem input und stattdessen außerhalb/vor... wie kann ich die auswählen?

InformationsquelleAutor der Frage Bob Loblaw | 2012-11-09

Schreibe einen Kommentar