mirror of
https://github.com/jgthms/bulma.git
synced 2024-11-14 11:14:24 +00:00
1243 lines
31 KiB
HTML
1243 lines
31 KiB
HTML
---
|
|
layout: documentation
|
|
doc-tab: elements
|
|
doc-subtab: form
|
|
---
|
|
|
|
{% include subnav-elements.html %}
|
|
|
|
<section class="section">
|
|
<div class="container">
|
|
<h1 class="title">Form controls</h1>
|
|
<h2 class="subtitle">
|
|
All generic <strong>form controls</strong>, designed for consistency
|
|
</h2>
|
|
|
|
<hr>
|
|
|
|
<div class="content">
|
|
<p>The following form controls <strong>classes</strong> are supported:</p>
|
|
<ul>
|
|
<li><code>.label</code></li>
|
|
<li><code>.input</code></li>
|
|
<li><code>.textarea</code></li>
|
|
<li><code>.select</code></li>
|
|
<li><code>.checkbox</code></li>
|
|
<li><code>.radio</code></li>
|
|
<li><code>.button</code></li>
|
|
<li><code>.help</code></li>
|
|
</ul>
|
|
<p>Each of them should be wrapped in a <code>.control</code> container.<br>
|
|
When combining several controls in a <strong>form</strong>, use the <code>.field</code> class as a <strong>container</strong>, to keep the spacing consistent.</p>
|
|
</div>
|
|
|
|
{% capture form_example %}
|
|
<div class="field">
|
|
<label class="label">Name</label>
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Text input">
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<label class="label">Username</label>
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-success" type="text" placeholder="Text input" value="bulma">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-user"></i>
|
|
</span>
|
|
<span class="icon is-small is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
<p class="help is-success">This username is available</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<label class="label">Email</label>
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-danger" type="text" placeholder="Email input" value="hello@">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-small is-right">
|
|
<i class="fa fa-warning"></i>
|
|
</span>
|
|
</p>
|
|
<p class="help is-danger">This email is invalid</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<label class="label">Subject</label>
|
|
<p class="control">
|
|
<span class="select">
|
|
<select>
|
|
<option>Select dropdown</option>
|
|
<option>With options</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<label class="label">Message</label>
|
|
<p class="control">
|
|
<textarea class="textarea" placeholder="Textarea"></textarea>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control">
|
|
<label class="checkbox">
|
|
<input type="checkbox">
|
|
I agree to the <a href="#">terms and conditions</a>
|
|
</label>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control">
|
|
<label class="radio">
|
|
<input type="radio" name="question">
|
|
Yes
|
|
</label>
|
|
<label class="radio">
|
|
<input type="radio" name="question">
|
|
No
|
|
</label>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field is-grouped">
|
|
<p class="control">
|
|
<button class="button is-primary">Submit</button>
|
|
</p>
|
|
<p class="control">
|
|
<button class="button is-link">Cancel</button>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{form_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{form_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<hr>
|
|
|
|
<h3 class="title">Colors</h3>
|
|
{% capture colors_example %}
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-primary" type="text" placeholder="Primary input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-info" type="text" placeholder="Info input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-success" type="text" placeholder="Success input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-warning" type="text" placeholder="Warning input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-danger" type="text" placeholder="Danger input">
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{colors_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{colors_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<hr>
|
|
|
|
{% capture sizes_example %}
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-small" type="text" placeholder="Small input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Normal input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-medium" type="text" placeholder="Medium input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-large" type="text" placeholder="Large input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<span class="select is-small">
|
|
<select>
|
|
<option>Select dropdown</option>
|
|
<option>With options</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<span class="select">
|
|
<select>
|
|
<option>Select dropdown</option>
|
|
<option>With options</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<span class="select is-medium">
|
|
<select>
|
|
<option>Select dropdown</option>
|
|
<option>With options</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<span class="select is-large">
|
|
<select>
|
|
<option>Select dropdown</option>
|
|
<option>With options</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<h3 class="title">Sizes</h3>
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{sizes_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{sizes_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<hr>
|
|
|
|
<h3 class="title">States</h3>
|
|
<h4 class="subtitle">Normal</h4>
|
|
{% capture normal_example %}
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Normal input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<textarea class="textarea" placeholder="Normal textarea"></textarea>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{normal_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{normal_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<h4 class="subtitle">Hover</h4>
|
|
{% capture hover_example %}
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-hovered" type="text" placeholder="Hovered input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<textarea class="textarea is-hovered" placeholder="Hovered textarea"></textarea>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{hover_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{hover_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<h4 class="subtitle">Focus</h4>
|
|
{% capture focus_example %}
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input is-focused" type="text" placeholder="Focused input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<textarea class="textarea is-focused" placeholder="Focused textarea"></textarea>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{focus_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{focus_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<h4 class="subtitle">Loading</h4>
|
|
{% capture loading_example %}
|
|
<div class="field">
|
|
<p class="control is-loading">
|
|
<input class="input" type="text" placeholder="Loading input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<div class="control">
|
|
<div class="select is-loading">
|
|
<select>
|
|
<option>Loading dropdown</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control is-loading">
|
|
<textarea class="textarea" placeholder="Loading textarea"></textarea>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{loading_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{loading_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
{% capture loading_sizes_example %}
|
|
<div class="field">
|
|
<p class="control is-small is-loading">
|
|
<input class="input is-small" type="text" placeholder="Small loading input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control is-loading">
|
|
<input class="input" type="text" placeholder="Normal loading input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control is-medium is-loading">
|
|
<input class="input is-medium" type="text" placeholder="Medium loading input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control is-large is-loading">
|
|
<input class="input is-large" type="text" placeholder="Large loading input">
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<div class="control">
|
|
<div class="select is-small is-loading">
|
|
<select>
|
|
<option>Small loading dropdown</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="field">
|
|
<div class="control">
|
|
<div class="select is-loading">
|
|
<select>
|
|
<option>Normal loading dropdown</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="field">
|
|
<div class="control">
|
|
<div class="select is-medium is-loading">
|
|
<select>
|
|
<option>Medium loading dropdown</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="field">
|
|
<div class="control">
|
|
<div class="select is-large is-loading">
|
|
<select>
|
|
<option>Large loading dropdown</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endcapture %}
|
|
|
|
{% if site.vernum >= 43 %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
<p style="margin-bottom: 0.5rem;">
|
|
<span class="tag is-success">New!</span>
|
|
<span class="tag is-info">0.4.3</span>
|
|
</p>
|
|
<div class="content">
|
|
<p>
|
|
You can resize the loading spinner by appending <code>is-small</code>, <code>is-medium</code> or <code>is-large</code> to the <code>control</code> container.
|
|
</p>
|
|
</div>
|
|
{{loading_sizes_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{loading_sizes_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<h4 class="subtitle">Disabled</h4>
|
|
{% capture disabled_example %}
|
|
<div class="field">
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Disabled input" disabled>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<div class="control">
|
|
<div class="select is-disabled">
|
|
<select disabled>
|
|
<option>Disabled dropdown</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<textarea class="textarea" placeholder="Disabled textarea" disabled></textarea>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<label class="checkbox" disabled>
|
|
<input type="checkbox" disabled>
|
|
Remember me
|
|
</label>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<label class="radio" disabled>
|
|
<input type="radio" name="question" disabled>
|
|
Yes
|
|
</label>
|
|
<label class="radio" disabled>
|
|
<input type="radio" name="question" disabled>
|
|
No
|
|
</label>
|
|
</p>
|
|
</div>
|
|
<div class="field is-grouped">
|
|
<p class="control">
|
|
<button class="button is-primary" disabled>Submit</button>
|
|
</p>
|
|
<p class="control">
|
|
<button class="button" disabled>Cancel</button>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{disabled_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{disabled_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Font Awesome Icons -->
|
|
<hr>
|
|
|
|
<h3 class="title">With icons</h3>
|
|
<div class="content">
|
|
<p>You can append one of 2 <strong>modifiers</strong> on a control:</p>
|
|
<ul>
|
|
<li>
|
|
<code>has-icons-left</code>
|
|
</li>
|
|
<li>
|
|
and/or <code>has-icons-right</code>
|
|
</li>
|
|
</ul>
|
|
<p>You also need to add a modifier on the <strong>icon</strong>:</p>
|
|
<ul>
|
|
<li>
|
|
<code>icon is-left</code> if <code>has-icons-left</code> is used
|
|
</li>
|
|
<li>
|
|
<code>icon is-right</code> if <code>has-icons-right</code> is used
|
|
</li>
|
|
</ul>
|
|
<p>The size of the <strong>input</strong> will define the size of the icon container.</p>
|
|
</div>
|
|
{% capture icons_example %}
|
|
<div class="field">
|
|
<p class="control has-icons-left">
|
|
<input class="input" type="email" placeholder="Email">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control has-icons-left">
|
|
<input class="input" type="password" placeholder="Password">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-lock"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control">
|
|
<button class="button is-success">
|
|
Login
|
|
</button>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{icons_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{icons_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
{% capture select_icons_example %}
|
|
<div class="field">
|
|
<p class="control has-icons-left">
|
|
<span class="select">
|
|
<select>
|
|
<option selected>Country</option>
|
|
<option>Select dropdown</option>
|
|
<option>With options</option>
|
|
</select>
|
|
</span>
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-globe"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
|
|
<div class="content">
|
|
<p>
|
|
<span class="tag is-success">New!</span>
|
|
<span class="tag is-info">0.4.2</span>
|
|
</p>
|
|
<p>
|
|
You can now append icons to <strong>select dropdowns</strong> as well.
|
|
</p>
|
|
</div>
|
|
{{select_icons_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{select_icons_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="content">
|
|
<p>
|
|
If the control contains an icon, Bulma will make sure the icon remains <strong>centered</strong>, no matter the size of the input <em>or</em> of the icon.
|
|
</p>
|
|
</div>
|
|
|
|
{% capture has_icons_small_example %}
|
|
<div class="field">
|
|
<label class="label is-small">Small input</label>
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-small" type="email" placeholder="Email">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-small is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
|
|
{% capture has_icons_normal_example %}
|
|
<div class="field">
|
|
<label class="label">Normal input</label>
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input" type="email" placeholder="Email">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-small is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input" type="email" placeholder="Email">
|
|
<span class="icon is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
|
|
{% capture has_icons_medium_example %}
|
|
<div class="field">
|
|
<label class="label is-medium">Medium input</label>
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-medium" type="email" placeholder="Email">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-small is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-medium" type="email" placeholder="Email">
|
|
<span class="icon is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-medium" type="email" placeholder="Email">
|
|
<span class="icon is-medium is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-medium is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
|
|
{% capture has_icons_large_example %}
|
|
<div class="field">
|
|
<label class="label is-large">Large input</label>
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-large" type="email" placeholder="Email">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-small is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-large" type="email" placeholder="Email">
|
|
<span class="icon is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-large" type="email" placeholder="Email">
|
|
<span class="icon is-medium is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-medium is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<p class="control has-icons-left has-icons-right">
|
|
<input class="input is-large" type="email" placeholder="Email">
|
|
<span class="icon is-large is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-large is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{has_icons_small_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{has_icons_small_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{has_icons_normal_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{has_icons_normal_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{has_icons_medium_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{has_icons_medium_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="columns">
|
|
<div class="column is-half">
|
|
{{has_icons_large_example}}
|
|
</div>
|
|
<div class="column is-half">
|
|
{% highlight html %}
|
|
{{has_icons_large_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</div>
|
|
|
|
<hr>
|
|
|
|
<h3 id="form-addons" class="title">Form addons</h3>
|
|
<div class="content">
|
|
<p>If you want to <strong>attach</strong> controls together, use the <code>has-addons</code> modifier on the <code>control</code> container:</p>
|
|
</div>
|
|
{% capture addons_example %}
|
|
<div class="field has-addons">
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Find a repository">
|
|
</p>
|
|
<p class="control">
|
|
<a class="button is-info">
|
|
Search
|
|
</a>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{addons_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{addons_example}}
|
|
{% endhighlight %}
|
|
<div class="content">
|
|
<p>You can attach inputs, buttons, and dropdowns <strong>only</strong>.</p>
|
|
</div>
|
|
|
|
<p style="margin-bottom: 0.5rem;">
|
|
<span class="tag is-success">New!</span>
|
|
<span class="tag is-info">0.4.2</span>
|
|
</p>
|
|
|
|
<div class="content">
|
|
<p>It can be useful to append a <a href="{{site.url}}/documentation/elements/button#static-button">static button</a>.</p>
|
|
</div>
|
|
|
|
{% capture addons_static_example %}
|
|
<div class="field has-addons">
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Your email">
|
|
</p>
|
|
<p class="control">
|
|
<a class="button is-static">
|
|
@gmail.com
|
|
</a>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{addons_static_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{addons_static_example}}
|
|
{% endhighlight %}
|
|
|
|
<div class="content">
|
|
<p>Use the <code>is-expanded</code> modifier on the element you want to fill up the remaining space (in this case, the input):</p>
|
|
</div>
|
|
{% capture addons_expanded_example %}
|
|
<div class="field has-addons">
|
|
<p class="control">
|
|
<span class="select">
|
|
<select>
|
|
<option>$</option>
|
|
<option>£</option>
|
|
<option>€</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Amount of money">
|
|
</p>
|
|
<p class="control">
|
|
<a class="button">
|
|
Transfer
|
|
</a>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="field has-addons">
|
|
<p class="control">
|
|
<span class="select">
|
|
<select>
|
|
<option>$</option>
|
|
<option>£</option>
|
|
<option>€</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
<p class="control is-expanded">
|
|
<input class="input" type="text" placeholder="Amount of money">
|
|
</p>
|
|
<p class="control">
|
|
<a class="button">
|
|
Transfer
|
|
</a>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{addons_expanded_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{addons_expanded_example}}
|
|
{% endhighlight %}
|
|
|
|
<div class="content">
|
|
<p>If you want a full width select dropdown, pair <code>control is-expanded</code> with <code>select is-fullwidth</code>.</p>
|
|
</div>
|
|
{% capture addons_expanded_fullwidth_example %}
|
|
<div class="field has-addons">
|
|
<p class="control is-expanded">
|
|
<span class="select is-fullwidth">
|
|
<select name="country">
|
|
<option value="Argentina">Argentina</option>
|
|
<option value="Bolivia">Bolivia</option>
|
|
<option value="Brazil">Brazil</option>
|
|
<option value="Chile">Chile</option>
|
|
<option value="Colombia">Colombia</option>
|
|
<option value="Ecuador">Ecuador</option>
|
|
<option value="Guyana">Guyana</option>
|
|
<option value="Paraguay">Paraguay</option>
|
|
<option value="Peru">Peru</option>
|
|
<option value="Suriname">Suriname</option>
|
|
<option value="Uruguay">Uruguay</option>
|
|
<option value="Venezuela">Venezuela</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
<p class="control">
|
|
<button type="submit" class="button is-primary">Choose</button>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{addons_expanded_fullwidth_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{addons_expanded_fullwidth_example}}
|
|
{% endhighlight %}
|
|
|
|
<div class="content">
|
|
<p>Use the <code>has-addons-centered</code> or the <code>has-addons-right</code> modifers to alter the <strong>alignment</strong>.</p>
|
|
</div>
|
|
{% capture addons_center_example %}
|
|
<div class="field has-addons has-addons-centered">
|
|
<p class="control">
|
|
<span class="select">
|
|
<select>
|
|
<option>$</option>
|
|
<option>£</option>
|
|
<option>€</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Amount of money">
|
|
</p>
|
|
<p class="control">
|
|
<a class="button is-primary">
|
|
Transfer
|
|
</a>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{addons_center_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{addons_center_example}}
|
|
{% endhighlight %}
|
|
{% capture addons_right_example %}
|
|
<div class="field has-addons has-addons-right">
|
|
<p class="control">
|
|
<span class="select">
|
|
<select>
|
|
<option>$</option>
|
|
<option>£</option>
|
|
<option>€</option>
|
|
</select>
|
|
</span>
|
|
</p>
|
|
<p class="control">
|
|
<input class="input" type="text" placeholder="Amount of money">
|
|
</p>
|
|
<p class="control">
|
|
<a class="button is-primary">
|
|
Transfer
|
|
</a>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{addons_right_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{addons_right_example}}
|
|
{% endhighlight %}
|
|
|
|
<hr>
|
|
|
|
<h3 class="title">Form group</h3>
|
|
<div class="content">
|
|
<p>
|
|
If you want to <strong>group</strong> controls together, use the <code>is-grouped</code> modifier on the <code>control</code> container.
|
|
<br>
|
|
Use the <code>is-grouped-centered</code> or the <code>is-grouped-right</code> modifers to alter the <strong>alignment</strong>.
|
|
</p>
|
|
<p>
|
|
Add the <code>is-expanded</code> modifier on the control element you want to <strong>fill up the remaining space</strong>.
|
|
</p>
|
|
</div>
|
|
{% capture group_example %}
|
|
<div class="field is-grouped">
|
|
<p class="control is-expanded">
|
|
<input class="input" type="text" placeholder="Find a repository">
|
|
</p>
|
|
<p class="control">
|
|
<a class="button is-info">
|
|
Search
|
|
</a>
|
|
</p>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{group_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{group_example}}
|
|
{% endhighlight %}
|
|
|
|
<hr>
|
|
|
|
<h3 class="title">Horizontal form</h3>
|
|
<div class="content">
|
|
<p>If you want a <strong>horizontal</strong> form control, use the <code>is-horizontal</code> modifier on the <code>field</code> container, in which you include:</p>
|
|
<ul>
|
|
<li>
|
|
<code>field-label</code> for the side label
|
|
</li>
|
|
<li>
|
|
<code>field-body</code> for the input/select/textarea container
|
|
</li>
|
|
</ul>
|
|
<p>You can of course use <code>is-grouped</code> or <code>has-addons</code> for the child elements.</p>
|
|
</div>
|
|
{% capture horizontal_form_example %}
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-normal">
|
|
<label class="label">From</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field is-grouped">
|
|
<p class="control is-expanded has-icons-left">
|
|
<input class="input" type="text" placeholder="Name">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-user"></i>
|
|
</span>
|
|
</p>
|
|
</div>
|
|
<div class="field">
|
|
<p class="control is-expanded has-icons-left has-icons-right">
|
|
<input class="input is-success" type="email" placeholder="Email" value="alex@smith.com">
|
|
<span class="icon is-small is-left">
|
|
<i class="fa fa-envelope"></i>
|
|
</span>
|
|
<span class="icon is-small is-right">
|
|
<i class="fa fa-check"></i>
|
|
</span>
|
|
</p>
|
|
<p class="help is-success">This email is correct</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-normal">
|
|
<label class="label">Department</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field is-narrow">
|
|
<div class="control">
|
|
<div class="select is-fullwidth">
|
|
<select>
|
|
<option>Business development</option>
|
|
<option>Marketing</option>
|
|
<option>Sales</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label">
|
|
<label class="label">Already a member?</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field is-narrow">
|
|
<div class="control">
|
|
<label class="radio">
|
|
<input type="radio" name="member">
|
|
Yes
|
|
</label>
|
|
<label class="radio">
|
|
<input type="radio" name="member">
|
|
No
|
|
</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-normal">
|
|
<label class="label">Subject</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<input class="input is-danger" type="text" placeholder="e.g. Partnership opportunity">
|
|
</div>
|
|
<p class="help is-danger">
|
|
This field is required
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-normal">
|
|
<label class="label">Question</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<textarea class="textarea" placeholder="Explain how we can help you"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label">
|
|
<!-- Left empty for spacing -->
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<button class="button is-primary">
|
|
Send message
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{horizontal_form_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{horizontal_form_example}}
|
|
{% endhighlight %}
|
|
|
|
<div class="content">
|
|
<p>
|
|
<span class="tag is-success">New!</span>
|
|
<br>
|
|
To preserve the <strong>vertical alignment</strong> of labels with each type and size of control, the <code>.field-label</code> comes with <strong>4 size modifiers</strong>:
|
|
</p>
|
|
<ul>
|
|
<li>
|
|
<code>.is-small</code>
|
|
</li>
|
|
<li>
|
|
<code>.is-normal</code> for any <code>.input</code> or <code>.button</code>
|
|
</li>
|
|
<li>
|
|
<code>.is-medium</code>
|
|
</li>
|
|
<li>
|
|
<code>.is-large</code>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
{% capture field_label_example %}
|
|
<div class="field is-horizontal">
|
|
<div class="field-label">
|
|
<label class="label">No padding</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<label class="checkbox">
|
|
<input type="checkbox">
|
|
Checkbox
|
|
</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-small">
|
|
<label class="label">Small padding</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<input class="input is-small" type="text" placeholder="Small sized input">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-normal">
|
|
<label class="label">Normal label</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<input class="input" type="text" placeholder="Normal sized input">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-medium">
|
|
<label class="label">Medium label</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<input class="input is-medium" type="text" placeholder="Medium sized input">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field is-horizontal">
|
|
<div class="field-label is-large">
|
|
<label class="label">Large label</label>
|
|
</div>
|
|
<div class="field-body">
|
|
<div class="field">
|
|
<div class="control">
|
|
<input class="input is-large" type="text" placeholder="Large sized input">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endcapture %}
|
|
<div class="example">
|
|
{{field_label_example}}
|
|
</div>
|
|
{% highlight html %}
|
|
{{field_label_example}}
|
|
{% endhighlight %}
|
|
</div>
|
|
</section>
|