Zum Hauptinhalt springen
VelinStyle v1.2.0
⌂ Home
  1. Docs
  2. Formulare
  3. Überblick

Formulare Überblick 1.2.0

VelinStyle bietet ein zusammenhängendes Set von Formular-Klassen zum Gestalten von Eingaben, Labels, Feldgruppen und mehr - mit konsistenten Größen, Abständen und Dark-Mode-Unterstützung direkt ab Werk. English: Forms

Reifegrad: Formular-Primitives (.velin-field, .velin-label, .velin-input) sind in 1.2.0 stabil. Kontrast- und Fokus-Tokens sind standardmäßig AAA-orientiert - keine Zertifizierung auf Anwendungsebene.

Wann verwenden

Wann nicht

Feld-Wrapper - .velin-field

Wickle Label und Eingabe gemeinsam in .velin-field, um konsistente vertikale Abstände und eine korrekte Zuordnung zwischen Label und Control zu erhalten.

<div class="velin-field">
  <label class="velin-label" for="email">Email address</label>
  <input type="email" class="velin-input" id="email" placeholder="you@example.com">
</div>
<div class="velin-field">
  <label class="velin-label" for="password">Password</label>
  <input type="password" class="velin-input" id="password" placeholder="••••••••">
</div>

Labels - .velin-label

Wende .velin-label auf jedes <label> an, um konsistente Schriftstärke, Größe und Abstände zu erhalten. Pflichtfelder können .velin-label--required verwenden.

<label class="velin-label velin-label--required" for="name">Full name</label>
<input type="text" class="velin-input" id="name">

Eingaben - .velin-input

Die Klasse .velin-input liefert konsistentes Styling für Texteingaben. Standard-Controls erfüllen ein Mindestziel von 44px. Dichte entsteht über Layout-Abstände und container-style-Utilities - nicht über separate --sm/--lg-Input-Modifier.

<input type="email" class="velin-input" placeholder="you@example.com">

Hilfetext

Füge mit .velin-field-help kontextuelle Hilfe unter einem Formular-Control hinzu.

Muss 3-20 Zeichen lang sein, nur Buchstaben und Zahlen.
<div class="velin-field">
  <label class="velin-label" for="username">Username</label>
  <input type="text" class="velin-input" id="username">
  <small class="velin-field-help">Must be 3-20 characters.</small>
</div>

Vollständiges Formularbeispiel

Wir geben deine E-Mail nie weiter.
<form>
  <div class="velin-field">
    <label class="velin-label" for="name">Full name</label>
    <input type="text" class="velin-input" id="name">
  </div>
  <div class="velin-field">
    <label class="velin-label" for="email">Email</label>
    <input type="email" class="velin-input" id="email">
  </div>
  <div class="velin-field">
    <label class="velin-label" for="msg">Message</label>
    <textarea class="velin-input" id="msg" rows="3"></textarea>
  </div>
  <button type="submit" class="velin-btn velin-btn--primary">Submit</button>
</form>

CSS-Variablen

Formular-Controls nutzen CSS Custom Properties für einfaches Theming:

:root {
  --velin-input-bg: #fff;
  --velin-input-color: #212529;
  --velin-input-border-color: #dee2e6;
  --velin-input-border-radius: 0.375rem;
  --velin-input-focus-border-color: #86b7fe;
  --velin-input-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, .25);
  --velin-input-padding-x: 0.75rem;
  --velin-input-padding-y: 0.375rem;
  --velin-label-font-weight: 500;
}

Barrierefreiheit