Mit attribute selector input value stylen

G

Gast170816

Hallo,

ich muss dasTextlabel bei einem Radiobutton-Input stylen, wo's aber keine class gibt (geht auch nicht ranzumachen, ist was abgeschlossenes)...es gibt nur value-Attribute...die kann man per CSS ansprechen.

Ich habe das so in der CSS gemacht. Es spricht theoretisch das schon an, aber keine Schriften, nur Höhe und so kann man ändern.
Code:
form#kontakt input[value="feldeins"] {
    color: #FF9900;
}
Wie kann ich nun die Schrift ansprechen. Mit "font-color" gings nicht, nicht mal "background-color" hat den Labelhintergrund geändert...wie gesagt, nur die Höhe dieses Input/die Inputelementzeile mit "height" hat funktioniert.
 
Das geht nicht, der Code sieht so aus, da steht die Bezeichnung für den Radiobutton gleich dran. Es gibt leider keine <label>...und an den Code komm ich auch nicht.

Code:
<div>
<input class="meinstyle" type="radio" value="feldeins" name="adresse">
Vorname
<br>
<input class="meinstyle" type="radio" value="feldzwei" name="adresse">
Name
<br>
</div>

Die class könnte man noch meinen zu verwenden... aber das geht auch nicht...z.B. "input.meinstyle"
Da sieht man im Firebug nicht, dass es angesprochen wird, dabei stimmt die Schreibweise doch, oder?!

Ich kann den Code nicht anfassen, deshalb könnt es vielleicht sein, dass irgendein Skript da was macht, dass das nicht geht?!

(Der HTML-Code ist also unveränderbar so wie's da steht. Ich kann nur die CSS-Datei anfassen. Deshalb ist es grad so schwierig.)
 
Hi,
was heißt du kannst den Code nicht anfassen?
Arbeitest du da nicht an einer dir zugänglichen Webseite?

Grundsätzlich ist das weglassen eines Labels zwar erlaubt erschwert aber unnötigerweise die Zugänglichkeit.

Du hast nun leider ein Problem. Den über das input-Element kannst du den Text nicht stylen da das Input kein Kindelemnet hat. Der Text ist ein Kindelement des Divs. Da das Div aber keine Klasse besitzt würdest du alle Divs verändern wenn du diese ansprichst.
Also so kommst du nicht zufriedenstellend weiter.

Du könntest natürlich über Javascript dem Div eine Klasse hinzufügen und dann das Div stylen.
Mittels Jquery würde das so funktionieren

Javascript:
$(function(){
   $('input.meinstyle').parent().addClass('label');
});

Viele Grüße
 
Hallo,

ich habe zwar nicht richtig verstanden was mit "Textlabel bei einem Radiobutton-Input stylen" gemeint ist, aber vermutlich sollen die Textknoten formatiert werden, die einem INPUT-Element folgen. Dazu könnte man auch die Textknoten in SPAN-Tags einhüllen
Javascript:
$("div").contents()
        .filter(function(){
            return this.nodeType == 3;
        })
        .wrap("<span></span>");
... und anschließend kann das SPAN-Element als "following-sibling" des INPUT-Elements selektiert werden:
CSS:
input.meinstyle + span {
    color: #f90;
}
Das würde auch Formatierungen in Abhängigkeit vom "checked"-Zustand des INPUT-Elements ermöglichen.

edit:
Statt SPAN-Tags könnten natürlich auch LABEL-Tags verwendet werden.
 
Zuletzt bearbeitet von einem Moderator:
Hi,
so wie ich das verstanden habe meint er eben den Bezeichner der Radiobuttons als Label auch wenn das Label-Element fehlt :).
Dein Script wäre auch eine Möglichkeit und bietet wie du schon sagst, eben etwas mehr.

Grüße
 

Neue Beiträge

Zurück