Ich erstelle ein Formular mit Dojo, und ich möchte ein Bereich-beschränkte Anzahl Eingabefeld. So verwende ich diese:Wie kann ich vorhersagen, welcher Typ von CSS-Selektor funktioniert?
<input
id = "sample_input"
type = "text"
dojoType = "dijit.form.NumberTextBox"
name = "sample_input"
value = "27"
constraints = "{min:1,max:30,places:0}"
promptMessage = "Enter a value"
required = "true"
invalidMessage = "Invalid value."
/>
Es funktioniert, aber es ist zu breit, und der Inhalt wird linksbündig.
Keines dieser Zeilen zu meinem INPUT-Element hinzugefügt haben, wird einen Unterschied machen:
width = "60"
text-align = "right"
, die eine Frage an und für sich ist, aber das ist OK, ich weiß, ich sollte anstelle der Verwendung von CSS werden HTML. So füge ich dies im HEAD-Bereich:
<style type="text/css">
.NARROW {width:60px;}
.RIGHT_JUSTIFIED {text-align:right;}
</style>
und diese an das Eingangselement:
class = "NARROW RIGHT_JUSTIFIED"
und löst die Breite, nicht aber die Textausrichtung.
die Textausrichtung zu lösen, muss ich diese stattdessen tun:
<style type="text/css">
.NARROW {width:60px;}
input {text-align:right;}
</style>
die width
Eigenschaft im input
Stil angeben, funktioniert auch nicht.
Das ist also meine Frage. Warum funktionieren Inline-Stile in diesem Fall nicht, und warum muss ich einen Klassenselektor für die Breite verwenden, aber einen Elementselektor für die Textausrichtung? Und wie kann ich voraussehen, wann welcher Selektor anwendbar ist?
Sie haben ein - (Bindestrich) in Ihrem Klassenattribut, aber ein _ (Unterstrich) in Ihrem CSS-Selektor.Ist das ein Tippfehler in Ihrem Post hier oder wie wird Ihr Code tatsächlich geschrieben? –
Danke, es war ein Tippfehler und ich habe es korrigiert. Der Code hatte diesen Fehler nicht (die Textausrichtung wird nicht geändert, wenn der Klassenname übereinstimmt). –