Formulaires CSS

Un exemple de formulaire, nous utilisons CSS pour afficher les éléments de formulaire HTML :

Exemples CSS

input[type=text], select { width: 100%; padding: 12px 20px; margin: 8px 0; display: inline-block; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; } input[type=submit] { width: 100%; background-color: #4C7EAF; color: white; padding: 14px 20px; margin: 8px 0; border: none; border-radius: 4px; cursor: pointer; } input[type=submit]:hover { background-color: #4777A6; } div { border-radius: 5px; background-color: #f2f2f2; padding: 20px; }

Essayez-le vous-même »

Styles de saisie (input)

Utilisez la propriété width pour définir la largeur de la zone de saisie :

Exemples CSS

input { width: 100%; }

Essayez-le vous-même »

Dans les exemples ci-dessus, la largeur de tous les éléments <input> est définie sur 100%. Si vous souhaitez uniquement définir un type spécifique d'input, vous pouvez utiliser les sélecteurs d'attributs suivants :

  • input[type=text]- Sélectionne les champs de saisie de texte
  • input[type=password]- Sélectionne les champs de saisie de mot de passe
  • input[type=number]- Sélectionne les champs de saisie numériques
  • ...

Marge intérieure du champ de saisie

UtilisationpaddingLa propriété peut ajouter du padding à l'intérieur de la zone de saisie.

Exemples CSS

input[type=text] { width: 100%; padding: 12px 20px; margin: 8px 0; box-sizing: border-box; }

Essayez-le vous-même »

Notez que nous avons définibox-sizingLa propriété estborder-boxCela garantit que le navigateur affiche la zone de saisie avec la largeur et la hauteur spécifiées, y compris la bordure et le padding.
Pour plus de contenu, vous pouvez lireCSS3 Box Sizing 。


Bordure de l'entrée (input)

UtilisationborderLa propriété peut modifier la taille ou la couleur de la bordure de l'entrée. Utilisezborder-radiusLa propriété peut ajouter des coins arrondis à l'entrée :

Exemples CSS

input[type=text] { border: 2px solid red; border-radius: 4px; }

Essayez-le vous-même »

Si vous voulez seulement ajouter une bordure inférieure, vous pouvez utiliserborder-bottomPropriété :

Exemples CSS

input[type=text] { border: none; border-bottom: 2px solid red; }

Essayez-le vous-même »

Couleur de l'entrée (input)

Vous pouvez utiliserbackground-colorpropriété pour définir la couleur d'arrière-plan du champ de saisie,colorla propriété est utilisée pour modifier la couleur du texte :

Exemples CSS

input[type=text] { background-color: #3C7CBC; color: white; }

Essayez-le vous-même »

Focus du champ de saisie (input)

Par défaut, certains navigateurs auront un contour bleu lorsque le champ de saisie reçoit le focus (en cliquant sur le champ de saisie). Nous pouvons définir le style du champ de saisie suroutline: none;pour ignorer cet effet.

Utilisation:focusLe sélecteur peut définir le style du champ de saisie lorsqu'il reçoit le focus :

Exemples CSS

input[type=text]:focus { background-color: lightblue; }

Essayez-le vous-même »

Exemples CSS

input[type=text]:focus { border: 3px solid #555; }

Essayez-le vous-même »

Icône du champ de saisie (input)

Si vous souhaitez ajouter une icône dans le champ de saisie, vous pouvez utiliserbackground-imagepropriété et le positionnementbackground-positionpropriété. Remarque : définissez la marge gauche de l’icône pour lui donner un peu d’espace :

Exemples CSS

input[type=text] { background-color: white; background-image: url('searchicon.png'); background-position: 10px 10px; background-repeat: no-repeat; padding-left: 40px; }

Essayez-le vous-même »

Champ de recherche animé

L’exemple suivant utilise CSStransitionpropriété, qui fait que le champ de saisie s’étend vers la droite lorsqu’il reçoit le focus. Vous pouvez utiliser la sectionAnimations CSSpour voir plus de contenu.

Exemples CSS

input[type=text] { -webkit-transition: width 0.4s ease-in-out; transition: width 0.4s ease-in-out; } input[type=text]:focus { width: 100%; }

Essayez-le vous-même »

Style de zone de texte (textarea)

Remarque :Utilisationresizepropriété pour désactiver la capacité de redimensionnement de la zone de texte (généralement en faisant glisser le coin inférieur droit pour redimensionner).

Exemples CSS

textarea { width: 100%; height: 150px; padding: 12px 20px; box-sizing: border-box; border: 2px solid #ccc; border-radius: 4px; background-color: #f8f8f8; resize: none; }

Essayez-le vous-même »

Styles du menu déroulant (select)

Exemples CSS

select { width: 100%; padding: 16px 20px; border: none; border-radius: 4px; background-color: #f1f1f1; }

Essayez-le vous-même »

Styles de boutons

Exemples CSS

input[type=button], input[type=submit], input[type=reset] { background-color: #4C7EAF; border: none; color: white; padding: 16px 32px; text-decoration: none; margin: 4px 2px; cursor: pointer; } /*Astuce : Utilisez width: 100% pour définir le bouton en pleine largeur*/

Essayez-le vous-même »

Pour plus de contenu, veuillez consulter notretutoriel sur les boutons CSS.


Formulaires responsives

Les formulaires responsives peuvent réorganiser les éléments en fonction de la taille de la fenêtre du navigateur. Nous pouvons redimensionner la fenêtre du navigateur pour voir l'effet :

Avancé :L'exemple suivant utiliseRequêtes média CSS3pour créer un formulaire responsive.

Exemples CSS

* { box-sizing: border-box; } input[type=text], select, textarea { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 4px; resize: vertical; } label { padding: 12px 12px 12px 0; display: inline-block; } input[type=submit] { background-color: #4C7EAF; color: white; padding: 12px 20px; border: none; border-radius: 4px; cursor: pointer; float: right; } input[type=submit]:hover { background-color: #4777A6; } .container { border-radius: 5px; background-color: #f2f2f2; padding: 20px; } .col-25 { float: left; width: 25%; margin-top: 6px; } .col-75 { float: left; width: 75%; margin-top: 6px; } /*Effacer les flottants*/ .row:after { content: ""; display: table; clear: both; } /*Mise en page réactive - Lorsque la largeur de l'écran est inférieure à 600px, faire en sorte que les éléments s'empilent verticalement*/ @media screen and (max-width: 600px) { .col-25, .col-75, input[type=submit] { width: 100%; margin-top: 0; } }

Essayez-le vous-même »
autres extensions