Je crée un formulaire avec dojo, et je veux un champ de saisie de numéro restreint. Donc, j'utilise ceci:Comment puis-je anticiper quel type de sélecteur CSS va fonctionner?
<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."
/>
Cela fonctionne, mais il est trop large et le contenu est justifié à gauche.
Aucune de ces lignes, ajouté à mon élément INPUT, semble faire une différence:
width = "60"
text-align = "right"
qui est une question en soi, mais c'est OK, je sais que je devrais utiliser CSS au lieu de HTML J'ajoute donc cela dans la section HEAD:
<style type="text/css">
.NARROW {width:60px;}
.RIGHT_JUSTIFIED {text-align:right;}
</style>
et ce à l'élément INPUT:
class = "NARROW RIGHT_JUSTIFIED"
et qui résolve la largeur, mais pas la justification du texte.
Pour résoudre la justification du texte, je dois le faire à la place:
<style type="text/css">
.NARROW {width:60px;}
input {text-align:right;}
</style>
Spécification de la propriété width
dans le style input
ne fonctionne pas non plus.
Voilà ma question. Pourquoi les styles en ligne ne fonctionnent-ils pas dans ce cas, et pourquoi dois-je utiliser un sélecteur de classe pour la largeur, mais un sélecteur d'élément pour text-align? Et comment puis-je anticiper quand le sélecteur sera applicable?
Vous avez un - (tiret) dans votre attribut de classe, mais un _ (trait de soulignement) dans votre sélecteur CSS.Est-ce une faute de frappe dans votre message ici, ou la façon dont votre code est réellement écrit? –
Merci, c'était une faute de frappe et je l'ai corrigé. Le code n'a pas eu cette erreur (il ne change pas l'alignement du texte lorsque le nom de la classe correspond). –