Form controls
All generic form controls, designed for consistency
The following form controls classes are supported:
.label
.input
.textarea
.select
.checkbox
.radio
.button
.help
Each of them should be wrapped in a .control
container.
When combining several controls in a form, use the .field
class as a container, to keep the spacing consistent.
{{form_example}}
{% highlight html %}{{form_example}}{% endhighlight %}
Colors
{{colors_example}}
{% highlight html %}{{colors_example}}{% endhighlight %}
Sizes
{{sizes_example}}
{% highlight html %}{{sizes_example}}{% endhighlight %}
States
Normal
{{normal_example}}
{% highlight html %}{{normal_example}}{% endhighlight %}
Hover
{{hover_example}}
{% highlight html %}{{hover_example}}{% endhighlight %}
Focus
{{focus_example}}
{% highlight html %}{{focus_example}}{% endhighlight %}
Loading
{{loading_example}}
{% highlight html %}{{loading_example}}{% endhighlight %}
{% if site.vernum >= 43 %}
New!
0.4.3
You can resize the loading spinner by appending is-small
, is-medium
or is-large
to the control
container.
{{loading_sizes_example}}
{% highlight html %}{{loading_sizes_example}}{% endhighlight %}
{% endif %}
Disabled
{{disabled_example}}
{% highlight html %}{{disabled_example}}{% endhighlight %}
With icons
You can append one of 2 modifiers on a control:
-
has-icons-left
-
and/or
has-icons-right
You also need to add a modifier on the icon:
-
icon is-left
if has-icons-left
is used
-
icon is-right
if has-icons-right
is used
The size of the input will define the size of the icon container.
{{icons_example}}
{% highlight html %}{{icons_example}}{% endhighlight %}
New!
0.4.2
You can now append icons to select dropdowns as well.
{{select_icons_example}}
{% highlight html %}{{select_icons_example}}{% endhighlight %}
If the control contains an icon, Bulma will make sure the icon remains centered, no matter the size of the input or of the icon.
{{has_icons_small_example}}
{% highlight html %}{{has_icons_small_example}}{% endhighlight %}
{{has_icons_normal_example}}
{% highlight html %}{{has_icons_normal_example}}{% endhighlight %}
{{has_icons_medium_example}}
{% highlight html %}{{has_icons_medium_example}}{% endhighlight %}
{{has_icons_large_example}}
{% highlight html %}{{has_icons_large_example}}{% endhighlight %}
If you want to attach controls together, use the has-addons
modifier on the control
container:
{{addons_example}}
{% highlight html %}{{addons_example}}{% endhighlight %}
You can attach inputs, buttons, and dropdowns only.
New!
0.4.2
It can be useful to append a static button.
{{addons_static_example}}
{% highlight html %}{{addons_static_example}}{% endhighlight %}
Use the is-expanded
modifier on the element you want to fill up the remaining space (in this case, the input):
{{addons_expanded_example}}
{% highlight html %}{{addons_expanded_example}}{% endhighlight %}
If you want a full width select dropdown, pair control is-expanded
with select is-fullwidth
.
{{addons_expanded_fullwidth_example}}
{% highlight html %}{{addons_expanded_fullwidth_example}}{% endhighlight %}
Use the has-addons-centered
or the has-addons-right
modifers to alter the alignment.
{{addons_center_example}}
{% highlight html %}{{addons_center_example}}{% endhighlight %}
{{addons_right_example}}
{% highlight html %}{{addons_right_example}}{% endhighlight %}
Form group
If you want to group controls together, use the is-grouped
modifier on the control
container.
Use the is-grouped-centered
or the is-grouped-right
modifers to alter the alignment.
Add the is-expanded
modifier on the control element you want to fill up the remaining space.
{{group_example}}
{% highlight html %}{{group_example}}{% endhighlight %}
Horizontal form
If you want a horizontal form control, use the is-horizontal
modifier on the field
container, in which you include:
-
field-label
for the side label
-
field-body
for the input/select/textarea container
You can of course use is-grouped
or has-addons
for the child elements.
{{horizontal_form_example}}
{% highlight html %}{{horizontal_form_example}}{% endhighlight %}
New!
To preserve the vertical alignment of labels with each type and size of control, the .field-label
comes with 4 size modifiers:
-
.is-small
-
.is-normal
for any .input
or .button
-
.is-medium
-
.is-large
{{field_label_example}}
{% highlight html %}{{field_label_example}}{% endhighlight %}