- Remove the element and attribute selectors to reduce specificity elsewhere - Use a singular class for all text inputs, textareas, and selects (.form-control) - Update modifier classes to use .input-* - More consisitent modifier classes now available (no more element prefixes in selectors, .input-mini is now .input-sm, .input-large is now .input-lg) - Port some additional styling to custom .select controls since we're not longer styling the default select element with the move to a class
6.5 KiB
layout | title |
---|---|
page | Forms |
Style individual form controls and utilize common layouts.
Contents
- Will be replaced with the ToC, excluding the "Contents" header {:toc}
Overview
- We reset several elements' default styles for cross browser consistency and easier manipulation later. This includes
<fieldset>
s, WebKit validation bubbles, and most textual<input>
s. - Specific types of textual
<input>
s are styled automatically, but.form-control
is available should you need it. - Always declare a
type
on your<button>
s. - Form layouts rely on form groups.
Example form
Form controls in Primer currently have no basic layout specified (this is by design). You'll need to use <fieldset>
s, <div>
s, or other elements and styles to rearrange them.
{% example html %}
Remember me Herp Derp
Submit
{% endexample %}Form contrast
Textual form controls have a white background by default. You can change this to a light gray with .input-contrast
.
{% example html %}
{% endexample %}Sizing
Make inputs smaller, larger, or full-width with an additional class.
Small
{% example html %}
{% endexample %}Large
{% example html %}
{% endexample %}Block
{% example html %}
{% endexample %}Selects
Primer adds light height
and vertical-align
styles to <select>
s for all browsers to render them consistently with textual inputs.
{% example html %}
Choose an option Git Subversion Social Coding Beets Bears Battlestar Galactica {% endexample %}Custom
Custom <select>
s are also available—just add .select
. Only available in latest WebKit, Firefox, and IE browsers.
{% example html %}
Choose an option Git Subversion Social Coding Beets Bears Battlestar Galactica {% endexample %}Small
Use the .select-sm
class to resize both default and custom <select>
s to match the size of our small buttons.
{% example html %} Choose an option Git Subversion Social Coding Beets Bears Battlestar Galactica Choose an option Git Subversion Social Coding Beets Bears Battlestar Galactica {% endexample %}
Form groups
{% example html %}
- Example Text
- Example Label
- Choose an option Git Subversion Social Coding Beets Bears Battlestar Galactica
Form group validation
Convey errors and warnings for form groups. Add the appropriate class—either .errored
or .warn
—to the <dl class="form">
to start. Then, house your error messaging in an additional <dd>
with either .error
or .warning
.
{% example html %}
- Example Text
- This example input has an error.
- Example Text
- This example input has a warning.
Checkboxes and radios
Utilities to spice up the alignment and styling of checkbox and radio controls.
{% example html %}
This will do insanely awesome and amazing things!
You may also add emphasis to the label:
{% example html %}
Input group
Attached an input and button to one another.
{% example html %}
Form actions
Align buttons to the right—via float: right
on the buttons—in forms with .form-actions
. The floats are automatically cleared for you.
{% example html %}