Formulaire - FAQ CSS

Introduction aux éléments de formulaire

Que vais-je trouver ?

Vous trouverez diverses questions sur les feuilles de style css, pour la présentation des éléments de formulaires input, textarea...

Comment changer la couleur de fond des champs en Css?

Modifier la couleur de fond des champs grâce aux feuilles de style Css

Vous pouvez en feuille de style Css spécifier la couleur de fond ou une image d'arrière-plan sur un élément de formulaire. Pour cela vous devez utiliser les feuille de style Css de type background qui permettent de gérer le fond.
Je vous invite à aller voir la Faq dédiée aux arrières-plans pour en savoir plus.

Exemple de code pour changer la couleur de fond d'un élément de formulaire en Css :
<style>
  .maclass{ background-color : #800000;}
</style>
<input type="text" name="aliasdmc" value="valeur" class="maclass">

Comment modifier les bordures des champs en Css?

Modifier les bordures des champs grâce aux feuilles de style Css

Vous pouvez en feuille de style Css spécifier la couleur, l'épaisseur ou le style des bordures d'un élément de formulaire. Pour cela vous devez utiliser les feuilles de style Css de type border. Je vous invite à aller voir la Faq dédiée aux bordures pour en savoir plus.

Exemple de code pour changer la bordure d'un élément de formulaire en Css :
<style>
  .ma_bordure{
    border : none;
    border-bottom  : 2px solid gray;  
  }
  .ma_bordure:focus{ border-bottom-color : green; }
</style>
<label for="ma_bordure">Mon label</label>
<input name="mon_champ" type="text" value="" class="ma_bordure" id="ma_bordure">

Exemple de changement de bordure avec :focus :


Ce que vous devez voir :
Changement de bordure sur un champ de formulaire

Comment styliser le texte des champs en Css?

Styliser le texte des champs grâce aux feuilles de style Css

Les value des champs type="text" et la valeur des , les sont des textes qui peuvent être stylisés en Css.
Vous pouvez en feuille de style Css spécifier la police et la couleur, aussi que la décoration du texte. Il est accepté aussi de faire des alignements.

Exemple de code pour changer la font et la couleur d'un élément de formulaire en Css :
<style>
  .maclass{ font-family : Times; color : red; } 
</style>
<input type="text" name="aliasdmc" value="valeur" class="maclass">

Appliquer un style à une balise option grâce aux feuilles de style Css

Pour modifier l'aspect des balises d'une balise HTML ou XHTML rien de plus facile, plusieurs cas sont possibles.

Toutes les options du site ont le même aspect :
option{
/*propriétés css*/
}

Les options d'un select précis ont le même aspect :
.dmcderoulant option{
/*propriétés css*/
}
<select name="dmc" class="dmcderoulant">
  <option value="Option">Option</option>
</select>

Les options d'un select précis ont un aspect différent :
.dmcoption{
/*propriétés css*/
}
.dmcoptiona{
/*propriétés css*/
}
<select name="dmc">
  <option value="Option" class="dmcoption">Option</option>
  <option value="Option" class="dmcoptiona">Option</option>
</select>

Comment appliquer une bordure au radio ou checkbox en Css?

Appliquer une bordure au radio ou checkbox grâce aux feuilles de style Css

Il n'est pas possible de mettre une bordure a un input type="radio" ou à input type="checkbox".
Une solution, peut être l'utilisation les feuilles de style Css de type outline.
Voir un exemple de bordure de type outline

Comment changer l'aspect de barre de défilement en Css?

Modifier l'aspect de barre de défilement grâce aux feuilles de style Css

Certains navigateurs donnent la possibilité en feuille de style Css de spécifier l'aspect des barres de défilement (scrollbar) d'une balise HTML XHTML . Pour cela vous devez utiliser la feuille de style Css ci-dessous.
Je précise qu'à ce jour, il est impossible de modifier spécifier l'aspect des barres de défilement d'une balise HTML XHTML SELECT.

Comment changer l'aspect au changement d'état en Css?

Modifier l'aspect sur le focus ou le survole de la souris grâce aux feuilles de style Css

Pour modifier l'aspect d'une balise de formulaire quand le souris passe sur la balise, vous devez utiliser la feuille de style Css :hover.

Exemple d'écriture pour cibler un champ qui est survolé en Css :
selecteur-css:hover{
  /*propriétés Css*/
}

Pour modifier l'aspect d'une balise de formulaire quand elle a le focus, vous devez utiliser la feuille de style Css :focus.

Exemple d'écriture pour cibler un champ qui a le focus en Css :
selecteur-css:focus{
  /*propriétés Css*/
}

Il est important déclarer d'abord les propriétés pour :hover puis :focus. L'ordre est important dans la notion d'héritage et de plus c'est ce que conseille le W3C.

Code HTML pour l'utilisation de :hover et :focus :
<style>
.focus_et_hover:hover{ border : 1px solid green }
.focus_et_hover:focus{ color:red }
</style>
<label for="focus_et_hover">Mon label</label>
<input name="mon_champ" type="text" value="Exemple :focus et :hover" class="focus_et_hover" id="focus_et_hover">

Exemple d'utilisation du sélecteur :hover et :focus :


Ce que vous devez voir :
Utilisation de :focus et :hover sur un champ de formulaire

Cibler un champ en état valide ou invalide grâce aux feuilles de style Css

Pour modifier l'aspect d'une balise de formulaire invalide ou valide, pour cela vous devez utiliser la pseudo classe de feuille de style Css :invalid ou :valid.

Voir un exemple d'utilisation du sélecteur Css :valid

Voir un exemple d'utilisation du sélecteur Css :invalid

Exemple d'écriture pour cibler un champ valide et invalide en Css :
balise:valid{
  /*propriétés css*/
}
balise:invalid{
  /*propriétés css*/
}

Cibler un champ en état optionnel ou obligatoire grâce aux feuilles de style Css

Pour modifier l'aspect d'une balise de formulaire optionnelle ou obligatoire, pour cela vous devez utiliser la pseudo classe de feuille de style Css :optional ou :required.

Voir un exemple d'utilisation du sélecteur Css :optional

Voir un exemple d'utilisation du sélecteur Css :required

Exemple d'écriture pour cibler un champ optionnel et obligatoire en Css :
balise:optional{
  /*propriétés css*/
}
balise:required{
  /*propriétés css*/
}

Cibler un champ en checked ou selected grâce aux feuilles de style Css

Pour modifier l'aspect d'une balise de formulaire checked pour les radios et checkboxs ou selected pour les menus déroulants, pour cela vous devez utiliser la pseudo classe de feuille de style Css :checked.

Voir un exemple d'utilisation du sélecteur Css :checked

Voir un exemple d'utilisation du sélecteur Css :not

Voir un exemple d'utilisation du sélecteur Css :default

Exemple d'écriture pour cibler un champ checked ou selected en Css :
balise:checked{
  /*propriétés css*/
}
balise:not(:checked){
  /*propriétés css*/
}

balise:default{
  /*propriétés css*/
}

balise:not(:default){
  /*propriétés css*/
}

Comment modifier le style du texte du placeholder en Css?

Modifier l'aspect du texte du placeholder grâce aux feuilles de style Css

Certains navigateurs acceptent que le texte affiché de l'attribut placeholder soit stylé.
Pour cela, vous devez utiliser le pseudo-élément Css placeholder et ses formes préfixées.

Code HTML pour charter placeholder :
<style>
  .mon_placeholder:-ms-input-placeholder{ color:green }
  .mon_placeholder::-moz-placeholder{ color:green }
  .mon_placeholder::-webkit-input-placeholder,
  .mon_placeholder::placeholder{ color:green }
</style>
<label for="mon_champ">Mon label</label>
<input name="mon_champ" type="text" value="">

Exemple du changement de couleur du placeholder :


Ce que vous devez voir :
Charter en Css le placeholder

Comment cibler un élément de formulaire?

Diverses manières de cibler un élément de formulaire

Je ne reviendrais pas sur les sélecteurs Css classiques comme :

En fait cette partie est là, pour mettre l'accent sur l'assignation de Css via le sélecteur d'attribut.
Le sélecteur va vous permettre de cibler l'attribut name d'un élément de formulaire et de cibler l'attribut for de la balise .

Code HTML pour l'utilisation du sélecteur d'attribut :
<style>
  label[for=mon_champ]{ color : green }
  input[name=mon_champ]{ border : 1px solid green }
</style>
<label for="mon_champ">Mon label</label>
<input name="mon_champ" type="text" value="" id="mon_champ">

Exemple d'utilisation du sélecteur d'attribut name et for :


Ce que vous devez voir :
Utilisation du sélecteur d'attribut

Comment supprimer le contour bleu lié focus?

Supprimer le contour bleu qui apparait quand je clique dans le champ

Certain navigateurs, quand on clique dans le champ du formulaire affiche un contour bleu autour du champ.
Pour supprimer ou changer cet effet de contour bleu, vous devez les propriétés d'.
Cependant, pour l'accessibilité, vous devez faire en sorte que l'aspect du champ à la prise de focus soit visuellement différent de l'aspect initial du champ.

Code HTML pour supprimer le contour bleu autour du champ de formulaire :
<style>
.mon_countour_bleu{ border : 1px solid gray; outline :none}
.mon_countour_bleu:focus{ border-color :green }
</style>
<label for="mon_countour_bleu">Mon label</label>
<input name="mon_champ" type="text" value="" id="mon_countour_bleu" class="mon_countour_bleu">

Exemple de suppression du contour bleu autour du champ de formulaire:


Ce que vous devez voir :
Suppression du contour bleu autour du champ de formulaire