Skip to content

CSS: form-field

.instui-form-field — Een formulier-veld wrapper: een label, de bijbehorende besturingselementen, en inline-, verplicht- of read-only-indelingen.

Een foutmelding blijft verborgen totdat het veldbesturingselement :user-invalid is (na interactie van de gebruiker) of je de klasse -invalid toevoegt. Gebruik -layout-inline om het label naast de besturingselementen te plaatsen en -layout-stacked om het erboven te plaatsen. Stelt ook zijn eigen gap in tussen label, besturingselementen en meldingen; het ketenen van een -gap-* spacing utility-modifier overschrijft die ingebouwde waarde.

Source: form-field.css

Toegankelijkheid

Het <label>-element wikkelt het besturingselement, zodat de labeltekst het native benoemt; het verplicht-asteriskje is decoratief en moet verborgen zijn voor ondersteunende technologie (aria-hidden), en de foutmelding verschijnt zodra het besturingselement :user-invalid is of je de klasse -invalid toevoegt.

Gebruik

css
@import "@pantoken/components/components.css";
@import "@pantoken/components/form-field.css";

Voorbeelden

html
<label class="instui-form-field">
  <span class="label">Email address</span>
  <span class="controls"><input class="instui-text-input" type="email" placeholder="[email protected]"></span>
  <div class="instui-form-field-messages">
    <span class="instui-form-field-message -type-hint">We'll never share it.</span>
    <span class="instui-form-field-message -type-error">Enter a valid email address.</span>
  </div>
</label>

Structuur

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;

Modifiers

ModifierBeschrijving
.-inlineInline-indeling (afkorting voor -layout-inline).
.-invalidOngeldige (fout) toestand.
.-label-align-endRicht de labeltekst aan het einde uit.
.-label-align-startRicht de labeltekst aan het begin uit.
.-layout-inlineInline-indeling: label naast de besturingselementen.
.-layout-stackedGestapelde indeling: label boven de besturingselementen.
.-readonlyAlleen-lezen toestand.
.-v-align-bottomOnderkant van het label uitlijnen met de besturingselementen.
.-v-align-topBovenkant van het label uitlijnen met de besturingselementen.

Onderdelen

OnderdeelBeschrijving
.controlsHet besturingselementgebied naast of onder het label.
.labelHet veldlabel.

Pseudo-elementen

Pseudo-elementBeschrijving
::afterRendert het decoratieve asteriskje voor verplichte velden na de labeltekst wanneer het veld verplicht is.

Staten

ToestandBeschrijving
:required

Gebruikte tokens

TokenTypeWaarde
--instui-component-form-field-layout-asterisk-color<color>LightDarklight-dark(#CF1F24, #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)

Browserondersteuning

  • Bevat zijn elementstijlen met de CSS @scope at-regel; vereist een recente versie van Chromium, Firefox of Safari.

Subcomponenten

Gerelateerd