# Buttons

Buttons are very useful, and have many different applications in Formsort. Below are the some options provided, as well as some insight on configuring their behavior and design.&#x20;

***

### Select buttons

Select questions (and Boolean questions) can use customizable Select buttons to display choices to the responder. There are three main styles available—**Default**, **Checkmark**, and **Image**—each with its own configuration options.

Like other design elements in Formsort, Select buttons can be styled on a per-UI basis.&#x20;

#### Select Button Types

**Default**

The **Default** style presents a clean button with just a label—no icons or imagery. This is the base styling applied unless other visual features are enabled.

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2Fy6EhMb3tPFGcA26bnOvE%2Fimage.png?alt=media&#x26;token=a4ea7404-1e27-458c-abb6-abfbca678907" alt="" width="364"><figcaption></figcaption></figure></div>

**Checkmarks**

When **Show checkmarks and radio buttons on choices** is enabled in the **Style** tab of a Select question, checkmarks (or radio buttons) appear inside the choice buttons.

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2F5IW7qzXwMFnXcjPuJO67%2Fimage.png?alt=media&#x26;token=bd0e0fa5-cbba-4100-baa6-c6c594d63544" alt="" width="563"><figcaption></figcaption></figure></div>

Styling for checkmark-based buttons is controlled in two places:

* **Theme** → **Buttons** → **Select** → **Checkmark** → Controls button styling, and checkmark positioning.
* **Theme** → **Checkmarks** → Controls the styling of the checkmark or radio icons.
  * Checkmark styles will adapt styles defined in either **Single choice** or **Multiple choice** based on whether **Allow multiple selection** is enabled or not.

You can also control the **vertical alignment** of the checkmarks from the right-hand menu.&#x20;

{% hint style="info" %}
For more details, see our documentation on [Styling checkmarks and radio buttons](https://docs.formsort.com/styling/customizing-appearance/checkmarks).
{% endhint %}

**Image**

Enabling **Show images on choices** in the Style tab allows you to add images, videos, or GIFs to select choices.

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2Fm21PoedEY48wDULzqleb%2Fimage.png?alt=media&#x26;token=2c74bbcd-f6ec-4fb9-a8f2-7d81eafa271d" alt="" width="563"><figcaption></figcaption></figure></div>

After enabling this option, you can add media directly within each choice configuration.

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2FdNpEJL68psEZNW1KDafl%2Fimage.png?alt=media&#x26;token=3ebd0db9-b1e3-4b38-a8d2-007ecdb57474" alt="" width="563"><figcaption></figcaption></figure></div>

Image-style settings are located under:

**Theme → Buttons → Select → Image**

#### Layout Options

You can adjust how choices are laid out within a Select question. Available layout styles include:

* Grid
* Vertical (default)
* Horizontal
* Snug
* Space Around
* Space Between

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2Fhcq5qa7xHC2kSlf1SwRc%2Fimage.png?alt=media&#x26;token=36ee7272-4528-4a4f-9e6a-37ba7871ae86" alt="" width="549"><figcaption></figcaption></figure></div>

The layout setting can be adjusted directly on the Select question.

#### Style Overrides

Because Select buttons are used in various design contexts, you can override default styling on a per-question basis.

To do this:

1. Select the question.
2. Open the **Style** tab.
3. Enable **Override default select button style**.

***

### Next button

The [Next](https://docs.formsort.com/adding-questions-and-content/content-reference/next-button) button is probably the most important button within the flow. Clicking it will advance the user to the next available step.

The Next button position can be configured in Layout, and style settings can be found in the Buttons → Next section of the Theme tab.&#x20;

#### Style options

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2Fs4egI3PkQNQOXAHiwPSv%2Fimage.png?alt=media&#x26;token=96dc7e9f-8dc4-40d4-bdc3-c1866bdbee11" alt="" width="563"><figcaption></figcaption></figure></div>

By default, the Next button will only appear when the user has answered all the required questions and needs a way to move forward. You can opt to "Always show next button" by enabling the setting under **Behavior**, in which case the Next button will show in it's **Disabled** state until the user is available to proceed.

By default, "Next" is provided as the button label, but this can be modified or removed by changing the string inside the **Label** input.&#x20;

You can add an Image to your next button, style settings for which can be found at the bottom of the menu under **Image style** once an image has been added.

#### Next button style override

If you've added your [Next button as a component](https://docs.formsort.com/building-flows/content-types/next-button) on a step, the style settings can be overriden in the component's style menu. With the component selected, open the Style menu and disable "Use default select button style".&#x20;

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2F1AcnMbMJmiIkV7uRrKeY%2Fimage.png?alt=media&#x26;token=4b3393f9-b176-43f5-8a4f-82b974f2f7c3" alt="" width="563"><figcaption></figcaption></figure></div>

***

### Skip button

A **skip button** will appear if enabled, but only on steps where **all** questions within the step are [optional](https://docs.formsort.com/conditions-and-logic#optional). Of course, the responder could just click the Next button in this case, but having an explicit skip action may help people understand that their responses are not required on the current step.&#x20;

#### Options

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2FVv1JTPvYyv1ZhykuMQjP%2Fimage.png?alt=media&#x26;token=56d77f22-90b2-4604-a774-8a0300e1a9be" alt="" width="563"><figcaption></figcaption></figure></div>

By default, the button will have "Skip" as the copy inside the button, but this can be modified or removed by changing the string inside the **Label** input.&#x20;

You can add an Image to your skip button, style settings for which can be found at the bottom of the menu under **Image style** once an image has been added.

***

### Previous button

The **previous button** is optional, but recommended - it gives responders more control in navigating the flow.

#### Options

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2FSr7BCq27YQi8BFIO431f%2Fimage.png?alt=media&#x26;token=986e62d0-9d1d-468e-a733-c38c7ab48a8b" alt="" width="563"><figcaption></figcaption></figure></div>

By default, the button will have "Previous" as the copy inside the button, but this can be modified or removed by changing the string inside the **Label** input.&#x20;

You can add an Image to your Previous button, style settings for which can be found at the bottom of the menu under **Image style** once an image has been added.

***

### Exit button

If you enable the **exit button** in the style editor, users will be able to click it to abandon the flow.

There are a few cases where having a close or exit button is helpful:

* If users are accessing your flow directly, but you wish to bring them to your own page if they are abandoning.
  * &#x20;If you set a **redirect URL** then they will be brought to that URL.&#x20;
* If [embedding](https://docs.formsort.com/publishing-and-deployment/embedding) Formsort and you need a way to allow users to close without abandoning the page entirely.&#x20;
  * The parent window will receive the `FlowClosed` event when this happens, so you can close the Formsort embed in your code.

#### Options

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2F8W56w8gT0jzjMAdKOXgr%2Fimage.png?alt=media&#x26;token=9c0e5fcf-54a5-4ec0-bfca-2e7cbedc6854" alt="" width="563"><figcaption></figcaption></figure></div>

By default, the button will have an "X" as the copy inside the button, but this can be modified or removed by changing the string inside the **Label** input.&#x20;

You can add an Image to your Exit button, style settings for which can be found at the bottom of the menu under **Image style** once an image has been added.

***

### Restart button

If you add a **restart button** to your flow, the user will be able restart the flow with all their inputs cleared.&#x20;

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2Fjm55wB7pMccrts4RCS0k%2Fimage.png?alt=media&#x26;token=7bf797e7-97d8-4d88-a4f2-0a1c08c285af" alt="" width="563"><figcaption></figcaption></figure></div>

By default, the Restart button will have "Restart" as the copy inside the button, but this can be modified or removed by changing the string inside the **Label** input.&#x20;

You can add an Image to your Restart button, style settings for which can be found at the bottom of the menu under **Image style** once an image has been added.

***

### Default buttons

The **default button** styles will be applied to any buttons not listed above.

<div align="left"><figure><img src="https://1036686854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJPnL__mOdr_mLZ8nwf%2Fuploads%2FI7KBxnz9p2CS3LON2LDQ%2Fimage.png?alt=media&#x26;token=38358ec1-f000-4294-8e32-d4a8423ac1a0" alt="" width="519"><figcaption></figcaption></figure></div>
