Skip to content

CSS: form-field ​

.instui-form-field — Un conteneur de champ de formulaire : un libellé, ses contrôles, et des dispositions en ligne, requises ou en lecture seule.

Un message d'erreur reste caché jusqu'à ce que le contrôle du champ soit :user-invalid (après l'interaction de l'utilisateur) ou que vous ajoutiez la classe -invalid. Utilisez -layout-inline pour placer le libellé à côté des contrôles et -layout-stacked pour le placer au‑dessus. Définit aussi son propre gap entre le libellé, les contrôles et les messages ; chaîner un modificateur utilitaire d'espacement -gap-* remplace cette valeur intégrée.

Source: form-field.css

Accessibilité ​

The <label> element wraps the control, so the label text names it natively; the required asterisk is decorative and should be hidden from assistive tech (aria-hidden), and the error message surfaces once the control is :user-invalid or you add the -invalid class.

Utilisation ​

css
@import "@pantoken/components/components.css";
@import "@pantoken/components/form-field.css";
html
<label class="instui-form-field">
  <span class="label">Nom d'affichage</span>
  <span class="controls"><input class="instui-text-input" type="text" autocomplete="nickname"></span>
</label>

Structure ​

text
.instui-form-field
  .label
  .controls
    text-input (component)
  form-field-messages (component)
flowchart TD n0[".instui-form-field"]:::cssdoc-root n1(".label"):::cssdoc-part n2(".controls"):::cssdoc-part n3(["text-input"]):::cssdoc-component n4(["form-field-messages"]):::cssdoc-component n0 --> n1 n2 --> n3 n0 --> n2 n0 --> n4 click n3 "/api/css/text-input.md" click n4 "/api/css/form-field-messages.md" classDef cssdoc-root stroke-width:1px; classDef cssdoc-part stroke-width:1px; classDef cssdoc-slot stroke-width:1px; classDef cssdoc-component stroke-width:1px;

Modificateurs ​

ModificateurDescription
.-inlineDisposition en ligne (abréviation de -layout-inline).
.-invalidÉtat invalide (erreur).
.-label-align-endAligner le texte du libellé à la fin.
.-label-align-startAligner le texte du libellé au début.
.-layout-inlineDisposition en ligne : libellé à côté des contrôles.
.-layout-stackedDisposition empilée : libellé au‑dessus des contrôles.
.-readonlyÉtat en lecture seule.
.-v-align-bottomAligner le libellé en bas avec les contrôles.
.-v-align-topAligner le libellé en haut avec les contrôles.

Parties ​

PartieDescription
.controlsLa zone de contrôle à côté ou sous le libellé.
.labelLe libellé du champ.

Pseudo-éléments ​

Pseudo-élémentDescription
::afterAffiche l'astérisque décoratif indiquant un champ requis après le texte du libellé lorsque le champ est requis.

États ​

ÉtatDescription
:required—

Jetons consommés ​

TokenTypeValeur
--instui-component-form-field-layout-asterisk-color<color>LightDarklight-dark(#C51F22, #FA917F)
--instui-component-form-field-layout-font-family[ <font-family-name> | <generic-font-family> ]#Atkinson Hyperlegible Next, "Helvetica Neue", Helvetica, Arial, sans-serif
--instui-component-form-field-layout-font-size<length>1rem
--instui-component-form-field-layout-font-weight<integer>400
--instui-component-form-field-layout-gap-inputs<length>0.75rem
--instui-component-form-field-layout-gap-primitives<length>0.5rem
--instui-component-form-field-layout-line-height<length>1.125rem
--instui-component-form-field-layout-readonly-text-color<color>LightDarklight-dark(#576773, #AAB0B5)
--instui-component-form-field-layout-text-color<color>LightDarklight-dark(#273540, #ffffff)

Prise en charge des navigateurs ​

  • Contient les styles de son élément via la règle at CSS @scope ; nécessite une version récente de Chromium, Firefox ou Safari.

Sous-composants ​

Liés ​