What is Custom CSS

CSS is the language used to style HTML content. By writing CSS code for your form, you can define the colors, fonts, and other visual properties of your form elements.

Most parts of your form’s appearance can be modified without code using themes. But if you need a more custom look, you can use custom CSS to make a fully custom look & feel.

Custom CSS is available starting on the Pro plan. For more details on pricing, click here.

How to add a custom CSS

1

Open the advanced designer

Click Theme in the upper left side of your form and scroll down to Advanced designer in the left-hand panel.

2

Add your CSS

Once you click Apply CSS, you’ll see the CSS applied to your form. Go to Preview mode to confirm your form looks as you expect it to.

CSS classes you can use

These classes make it easier to target elements in your form. In general, these are the class names you should rely on (as opposed to other internal class names which may be subject to change).

CSS ClassElementExample
.fillout-field-containerThe container for all the fields on each page.fillout-field-container { // Add a thicker shadow box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); // Decrease width of form max-width: 450px; }
.fillout-field-[field-type] Examples: .fillout-field-short-answer .fillout-field-dropdownTarget specific field types// Change the width of short answer fields .fillout-field-short-answer input { max-width: 350px; }
.fillout-field-button“Next” button// Make the “next” button rounded .fillout-field-button button { border-radius: 100px }
.fillout-back-buttonBack button// Change the back button background color .fillout-back-button { background: blue; }
.fillout-skip-buttonSkip button.fillout-skip-button button { background: black; border-radius: 10px; color: white; }
.fillout-field-labelField labels// Change question labels to green .fillout-field-label p { color: green; }
.fillout-captionAll field captions// Change captions to red .fillout-caption p { color: red; }
.fillout-field-text (Heading) or .fillout-field-paragraph (paragraph)Heading and paragraph fields// Make h1 size text in paragraph field have different font .fillout-field-paragraph h1 { font-family: 'Brush Script MT', cursive; }
input[type="text"]::placeholderPlaceholder text// Change placeholder color input[type="text"]::placeholder { color: gray; }
.fillout-edit-mode .fillout-live-modeTarget edit or live (preview + published) mode of your forms// Hides all field labels in live mode of the form .fillout-live-mode .fillout-field-label p { display: none; }
.fillout-required-asteriskRequired asterisk *// Only changes in preview/live mode, not in the editor .fillout-required-asterisk { color: black; }
.fillout-login-profileThe profile icon in the top right corner that lets users logout of “login” forms..fillout-login-profile { display: none; }
.fillout-theme-logoYour logo, added via theme.fillout-theme-logo { display: none; }
.fillout-error-validation-messageValidation error message.fillout-error-validation-message { color: black; }

Can’t find the class you need? Let us know at support@fillout.com and we’ll add it!

Adding multiple fonts with Custom CSS

You can also use custom CSS to have different text in your form use different fonts. For example:

/* Target Heading and Paragraph Fields */
.fillout-field-text h1, h2,
.fillout-field-paragraph h1, h2 {
  font-family: 'MyCustomFont', Inter, 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

Here, we’ve targeted specifically the H1 and H2 headings in our form with our custom font, while the rest of the text will follow the font chosen on the theme of the form.

To import the fonts into the form, you’ll need to use the custom code feature to insert the font-family snippets, e.g.:

<style>
	/* Add one or more custom font-faces */
	@font-face {
	    font-family: 'MyCustomFont';
	    src: url('<Insert URL to custom font file>'),
	}
</style>

Custom code guide

If you want to add custom code to your form, like a JavaScript snippet or HTML div, there are two options: