Custom CSS

Customize any part of your form's appearance with custom CSS. Custom CSS is shared across all forms with the same theme.

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.
notion image
ย 
๐Ÿ“
Note: 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 followed by Advanced designer on the bottom left-hand panel.
notion image
ย 

2. Add your CSS

Once you press 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.
notion image
ย 

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 Class
Element
Example
.fillout-field-container
The 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-dropdown
Target specific field types
// Change the width of short answer fields .fillout-field-short-answer input { max-width: 350px; }
.fillout-back-button
Back button
// Change the back button background color .fillout-back-button { background: blue; }
.fillout-field-label
Field labels
// Change question labels to green .fillout-field-label p { color: green; }
.fillout-caption
All 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; }
.fillout-field-button
โ€œNextโ€ button
// Make the โ€œnextโ€ button rounded .fillout-field-button button { border-radius: 100px }
input[type="text"]::placeholder
Placeholder text
// Change placeholder color input[type="text"]::placeholder { color: gray; }
.fillout-edit-mode .fillout-live-mode
Target 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-asterisk
Required asterisk *
// Only changes in preview/live mode, not in the editor .fillout-required-asterisk { color: black; }
.fillout-login-profile
The profile icon in the top right corner that lets users logout of โ€œloginโ€ forms.
.fillout-login-profile { display: none; }
.fillout-theme-logo
Your logo, added via theme
.fillout-theme-logo { display: none; }
.fillout-error-validation-message
Validation 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:
HTML and CSS form field
HTML and CSS form field
Custom code
Custom code