Skip to main content

Contact · Form in steps

A quote request form in three steps (project, details, contact), with a step indicator and next and back buttons.

Contact · Form in steps

See it live: Contact · Form in steps on fancybricks.co — the live preview, and the button that copies it.

Or open the preview on its own — narrow the window to see it on a phone — and in dark mode.

In the builder

Preview on the front end. Scripts don't run inside the builder, so here you only see the layout: every field shows here at once, split by the step titles: on the front end the form shows one step at a time, with the step indicator and the Back and Next buttons. Save and open the page to see the full result.

Structure​

This is what the Bricks Structure panel shows after you paste the template. Component instances say which component they are.

Contact · Form in steps
Container
Quote
Intro (FBK Intro)
Intro · Button (FBK Button)
Quote card
Stepper
Step (model)
Step · Number
Step · Name
Step status
Form
Step buttons
Back (FBK Action button)
Next (FBK Action button)
Form steps (JS)

The template also pastes a dashed note above the section, with the short version of this page. It only shows inside the builder, never on the published page — see Builder notes.

FBK Action button​

This template is built on its own component, FBK Action button: select it in the Structure panel and everything below is in its Properties.

A real <button> for popups and interactions (Interactions → Click). No link.

FBK Action button in the Bricks panel, with its own properties

FBK Action button in the Bricks panel: its own properties are at the top.

  • Text: The button's label.
  • Tone: Brand: your accent color. Neutral: the heading color (the same tones as every Fancy Bricks component). Primary, Secondary and Outline are the looks Solid, Soft and Outline; Ghost is Plain. Options: Brand · Neutral.
  • Shadow on hover: Rise: under the mouse and on keyboard focus the button rises a little and casts a soft shadow (class fbk-btn--shadow), on top of any hover effect. Options: None · Rise.

Icon

  • Icon: Optional, beside the text; its side is set by Icon position below.
  • Icon position: Which side of the text the icon sits on. Options: Left · Right.

Style

  • Style: Primary: filled, the strongest action. Secondary and Outline: softer, for a second action next to a Primary. Ghost: a plain link line, no box. White and White outline: for dark backgrounds. Options: Primary · Secondary · Outline · Ghost · White (dark backgrounds) · White outline (dark backgrounds).
  • Size: Small, Medium or Large: the button's height and text size. Options: Small · Medium · Large.
  • Width: Auto: the button only as wide as its text and icon. Full width: it fills its container. Options: Auto · Full width.
  • Hover effect: Pulse is a non-stop ring around the icon: for one standout call to action, not every button. Glow replaces the color change of the style: the circle is the hover. Options: Color change · Sweep · Icon reveal · Brackets · Pulse (needs an icon) · Plus · Glow · Icon nudge.

How to adjust​

Every step is the same move: pick the element in the Structure panel, change its Properties.

Where are those panels?

How to adjust a template shows every one of them in a screenshot of the real builder: the Structure and Properties panels, the classes on an element, a component's style families and the field where a CSS variable goes.

The classes this element carries, in the Bricks panel.

The classes this element carries, in the Bricks panel.

This template&#39;s own component, with its Style group open.

This template's own component, with its Style group open.

  1. Paste the template in Bricks first — see Copy and paste.
  2. Select Intro (FBK Intro) › Properties: Eyebrow, Hide eyebrow, Title, Title level, Lead, Hide lead · Style group: Eyebrow style, Highlight, Title size, Accent line · Layout group: Alignment, Layout, Background, Spacing · Motion group: Reveal in slider.
  3. Select Intro · Button (FBK Button) › Properties: Text, Link, Tone, Shadow on hover · Icon group: Icon, Icon position · Style group: Style, Size, Width, Hover effect.
  4. Select Back, Next (FBK Action button) › Properties: Text, Tone, Shadow on hover · Icon group: Icon, Icon position · Style group: Style, Size, Width, Hover effect.
  5. Select Form › Content › Fields (add, remove, required), Submit button and Actions (Email: recipient and subject; success message).
  6. Spacing, sizes, color and timing with no property of their own: the CSS variables below.

CSS variables​

These are the only values in the template meant to be changed by hand. Copy the block, paste it, edit the numbers.

The Custom CSS field of this template&#39;s own element, with one of its variables as a real example.

The Custom CSS field of this template's own element, with one of its variables as a real example.

/* «Quote card» · class .fbk-wf-steps */
.fbk-wf-steps {
/* Card color (white like every Outline surface) and the line between steps */
--fbk-t-card-bg: var(--fbk-card-scheme-bg, var(--white));
--fbk-t-line: color-mix(in srgb, currentColor 16%, transparent);
}

Paste the block in the element's Style → CSS field (the selector is already in it), or set the same variables on the class itself to change every copy at once. The values are your framework's variables, so they follow your site: Choosing a framework.

Requirements​

  • Code execution. Needs "Execute code" enabled for the role in Bricks → Settings → Custom code, or the JS block shows as plain text instead of running.

What each requirement is, and how to set it up once for the whole site: Requirements.

Finish by hand​

  • Steps are set in the form itself, no code to touch: select Form › Fields. A field of type HTML starts a new step, and its text is the step's name (here <h3>Project</h3>, Details and Contact; plain text works too; leave its Label empty). Every field below it, up to the next HTML field, belongs to that step. To move a field to another step, drag it below that step's HTML field. To add a step, add an HTML field with the new name and drag it where the step starts; to remove one, delete its HTML field. In the builder the whole form shows with these titles, so you can see where each step starts.
  • The step indicator above the form is built from those names: Stepper holds one model step (disc and name) that is repeated for each step, so style that one and never add steps there. If the form does not start with an HTML field, the first step takes the name written in the model.
  • Next step checks the fields of the step before moving on (Enter in a field does the same); the step indicator marks the current step (aria-current) and the done ones (filled discs, and the line fills), and screen readers hear Step 2 of 3: Details. Without JavaScript the whole form shows at once, with the step titles.
  • Back and Next are FBK Action button (real buttons): Outline · Neutral and Primary. The form is the Bricks Form element in the Fancy Bricks house style (class fbk-form: boxed fields with the label above, primary submit with the Sweep hover): set its fields, actions and messages in the Form element. While a field has focus the Quote card card rises a little and casts a shadow (class fbk-focus-lift on it); remove the class for a still form. Other looks: add fbk-form--line (underline) or fbk-form--float (floating label).

On phones​

The template is designed desktop first, the Bricks default, and only changes at the two widths the library uses:

  • 991px and below — .fbk-wf-steps__wrap, .fbk-intro.
  • 767px and below — .fbk-wf-steps, .fbk-section.

Those changes live in Bricks' own breakpoint fields, so you edit them where you always do: pick the breakpoint in the toolbar and the same fields follow.

Careful with the classes shared by the whole library (fbk-section, fbk-intro, the component classes): a change there shows up in every template that uses them.

If your site's breakpoints are set up mobile first, copy the mobile-first variant of the template instead — see Copy and paste.

Accessibility​

In this template, keyboard focus is visible on every interactive piece; movement is cut back when the visitor's system asks for less motion; the state screen readers need is already set (aria-hidden, aria-label, aria-live).

What is checked on every template, and what depends on your own palette: Accessibility.

Dark mode​

With your site in dark mode this section turns dark too — the class fbk-section--auto-dark on the section does it. Remove the class to keep it light.

Its background is a modifier on the section, so you can swap it for any of the ones the template is checked with: fbk-section--soft, fbk-section--light, fbk-section--dark.

How the library follows your site's color scheme: Dark mode and preview.