Forms
Form elements styled to the vertical rhythm, including inputs, selects, textareas, checkboxes, radios, sizing, inline layout, and validation states.
Text Input
Text input with label
We will never share your email.
<div class="ug-form__group">
<label class="ug-form__label">Full Name</label>
<input class="ug-form__input" type="text" placeholder="Enter your name" />
</div>
<div class="ug-form__group">
<label class="ug-form__label">Email Address</label>
<input class="ug-form__input" type="email" placeholder="you@example.com" />
<span class="ug-form__help">We will never share your email.</span>
</div> Select
Select dropdown
<div class="ug-form__group">
<label class="ug-form__label">Favorite Park</label>
<select class="ug-form__select">
<option value="">Choose a park...</option>
<option value="yellowstone">Yellowstone</option>
<option value="yosemite">Yosemite</option>
<option value="grand-canyon">Grand Canyon</option>
<option value="zion">Zion</option>
</select>
</div> Textarea
Textarea
<div class="ug-form__group">
<label class="ug-form__label">Your Message</label>
<textarea class="ug-form__textarea" rows="4" placeholder="Write your message here..."></textarea>
</div> Checkboxes
Checkbox inputs
<div class="ug-form__group">
<label class="ug-form__label">Interests</label>
<label class="ug-form__checkbox">
<input type="checkbox" checked />
<span>Hiking</span>
</label>
<label class="ug-form__checkbox">
<input type="checkbox" />
<span>Camping</span>
</label>
<label class="ug-form__checkbox">
<input type="checkbox" />
<span>Wildlife Photography</span>
</label>
</div> Radio Buttons
Radio inputs
<div class="ug-form__group">
<label class="ug-form__label">Skill Level</label>
<label class="ug-form__radio">
<input type="radio" name="skill" checked />
<span>Beginner</span>
</label>
<label class="ug-form__radio">
<input type="radio" name="skill" />
<span>Intermediate</span>
</label>
<label class="ug-form__radio">
<input type="radio" name="skill" />
<span>Advanced</span>
</label>
</div> Input Sizes
Small and large inputs
<div class="ug-form__group">
<label class="ug-form__label">Small Input</label>
<input class="ug-form__input ug-form__input--sm" type="text" placeholder="Small" />
</div>
<div class="ug-form__group">
<label class="ug-form__label">Default Input</label>
<input class="ug-form__input" type="text" placeholder="Default" />
</div>
<div class="ug-form__group">
<label class="ug-form__label">Large Input</label>
<input class="ug-form__input ug-form__input--lg" type="text" placeholder="Large" />
</div> Inline Form
Inline layout
<form class="ug-form--inline">
<div class="ug-form__group">
<label class="ug-form__label">Name</label>
<input class="ug-form__input" type="text" placeholder="Name" />
</div>
<div class="ug-form__group">
<label class="ug-form__label">Email</label>
<input class="ug-form__input" type="email" placeholder="Email" />
</div>
<a class="ug-btn" href="#">Submit</a>
</form> Error State
Validation error
Please enter a valid email address.
<div class="ug-form__group">
<label class="ug-form__label">Email Address</label>
<input class="ug-form__input" type="email" value="not-an-email" required />
<span class="ug-form__error">Please enter a valid email address.</span>
</div> Disabled State
Disabled inputs
<div class="ug-form__group">
<label class="ug-form__label">Disabled Input</label>
<input class="ug-form__input" type="text" value="Cannot edit this" disabled />
</div>
<div class="ug-form__group">
<label class="ug-form__label">Disabled Select</label>
<select class="ug-form__select" disabled>
<option>Cannot change this</option>
</select>
</div>
<div class="ug-form__group">
<label class="ug-form__label">Disabled Textarea</label>
<textarea class="ug-form__textarea" disabled>Cannot edit this</textarea>
</div> Class Reference
| Class | Description |
|---|---|
.ug-form__group | Form field group wrapper |
.ug-form__label | Field label |
.ug-form__input | Text input field |
.ug-form__input--sm | Small input size |
.ug-form__input--lg | Large input size |
.ug-form__select | Select dropdown |
.ug-form__textarea | Textarea field |
.ug-form__checkbox | Checkbox wrapper (label + input + span) |
.ug-form__radio | Radio button wrapper (label + input + span) |
.ug-form__help | Help text below a field |
.ug-form__error | Error message text |
.ug-form--inline | Inline form layout |
.ug-form--disabled | Disabled form state (also :disabled) |