In Bulma, the <strong>form controls</strong> are an essential part of the framework. They comprise the following elements:
</p>
<ul>
<li>
<code>.button</code>
</li>
<li>
<code>.input</code>
</li>
<li>
<code>.select</code>
</li>
<li>
<code>.file-cta</code>
<code>.file-name</code>
</li>
<li>
<code>.pagination-previous</code>
<code>.pagination-next</code>
<code>.pagination-link</code>
<code>.pagination-ellipsis</code>
</li>
</ul>
<p>
The <code>control()</code> mixin ensures <strong>consistency</strong> by providing a set of styles that are shared between all these form controls. You can use it to create additional controls:
</p>
</div>
{% highlight sass %}.bulma-control-mixin {
@include control;
background: deeppink;
color: white;
}{% endhighlight %}
{% capture control-mixin %}
<buttonclass="bulma-control-mixin">
My control
</button>
{% endcapture %}
{% include elements/snippet.html content=control-mixin %}
{% include elements/anchor.html name="Sizes" %}
<divclass="content">
<p>
Controls have a default font size of <code>$size-normal</code> also come in <strong>3 additional sizes</strong>, which can be accessed via 3 additional mixins:
</p>
<ul>
<li>
{% include elements/snippet-inline.html content="@include control-small;" %} with a font size <code>$size-small</code>
</li>
<li>
{% include elements/snippet-inline.html content="@include control-medium;" %} with a font size <code>$size-medium</code>
</li>
<li>
{% include elements/snippet-inline.html content="@include control-large;" %} with a font size <code>$size-large</code>
The <code>control()</code> mixin also exists as <ahref="https://sass-lang.com/documentation/at-rules/extend#placeholder-selectors"target="_blank">Sass placeholder</a><code>%control</code>