Summary

Webflow closes the gap between what you can imagine and what you can bring to life. This introductory course is a great place to learn how to design, build, and launch responsive websites — visually. These lessons will give you an overview of Webflow’s UI, basic building blocks, and best practices for building on the web. We're so glad to have you here. Let's get started!

Lessons in this course

Getting started

Coming soon

Learn your way around the Webflow Designer.

Intro to the Designer
2:48
Coming soon

HTML makes up the structure and content on a website, while CSS styles the content. Webflow generates this code while you design.

Intro to HTML & CSS
3:38
Coming soon

Web structure

Coming soon

An overview of the box model — how it shapes web design and gives you more flexibility to build layouts in Webflow.

Intro to the box model
1:54
Coming soon

Learn 3 ways hierarchy is used in Webflow projects.

Element Hierarchy
3:57
Coming soon

Use the Navigator panel to manage element hierarchy and position.

Navigator panel
2:45
Coming soon

Element basics

Coming soon

Use the Add Elements panel to get quick, visual access to various elements you can add to your Webflow project.

Add Elements panel
1:49
Coming soon

Use sections to create separate blocks of content and divide the page into meaningful segments.

Section
4:14
Coming soon

Use containers to keep your content centered and legible.

Container
2:44
Coming soon

Use columns to place and organize content side-by-side horizontally. In Webflow, you can add columns, change their layout, and create responsive layouts.

Columns
2:22
Coming soon

An overview of the Div block — the most basic and versatile element in site building.

Div block
3:37
Coming soon

Components

Coming soon

Add and configure Webflow Forms and Form notifications, and manage Form submissions.

Forms
4:55
Coming soon

Add, customize, and reuse a Navbar.

Navbar
9:38
Coming soon

Add and style a slider to your project — one of the simplest and most powerful components in the Webflow Designer.

Slider
4:56
Coming soon

Check out how to use Symbols to turn any element and its children into a reusable component.

Symbols
3:47
Coming soon

Styling basics

Coming soon

Learn all about the Style panel and how to customize the layout and style of elements in Webflow.

Style panel overview
3:15
Coming soon

In Webflow, HTML tags give us an easy way to control the default styling for a particular element, without creating a unique class. For example, you can define the default styles for all paragraphs by editing the All Paragraphs tag. Adding a class with styles will override these default styles.

Here’s what we’ll be covering:

  1. Accessing tags
  2. ‍Styling tags versus classes
  3. ‍Example 1: All H1 Headings tag
  4. ‍Example 2: All Links tag
  5. ‍Example 3: All Images tag

Use HTML element tags to control the default styling for a particular element type.

HTML tags
3:59
Coming soon

Making manual style changes to each and every element is tedious and time-consuming. And entering repetitive values for hours and then trying to update those values one by one can be frustrating. Classes save styling information that you can apply to as many elements as you want throughout your project.

Here we’ll cover:

  1. ‍Creating classes
  2. ‍Applying classes
  3. ‍Editing classes
  4. ‍Creating class variants by duplicating classes or by adding combo classes

Use classes to save styling information that applies to as many elements as you want across your project.

Use classes to style elements
2:46
Coming soon

Lesson info

After you’ve applied a class to an element and added styling, sometimes you might want to make a small styling change on one instance of this class, without affecting other elements with that class. In such cases, instead of creating a new class and recreating the same styles, Webflow lets you create what we call a combo class, and apply style overrides to create a unique variation.

In this video, we'll walk you through:

  1. ‍Creating combo classes
  2. ‍Applying combo classes
  3. ‍Overriding styles
  4. ‍Understanding the differences between combo classes and duplicate classes

Make small styling changes on single instances of a class by creating combo classes.

Combo classes
4:05
Coming soon

To add some interactivity to your elements in Webflow, you can change the way they look and behave using states. As you're styling an element, clicking the States menu lets you toggle between the various states, like Hover and Pressed, you can access and style.

In this video, we'll explain the four states you can style for any element:

  1. None
  2. ‍Hover
  3. ‍Pressed
  4. ‍Focused

Then show you how to style those states to indicate interactivity. Then we'll dig into applying transitions to smooth out the change from one state to another, and finally, discuss the "current" state, which is a handy indicator for navigational links.

Add interactivity to your elements by changing how they look and behave in different states.

States
2:47
Coming soon

Layout

Coming soon

Webflow's Style Panel gives you several layout methods to help you position content in your project.

Layout settings
3:51
Coming soon

In the Style panel, you can define the spacing (margin and padding) for each element. In this article, we’ll cover what each of these layout controls is and how they’ll affect your elements. These properties make it possible to create responsive websites with content that reflows while creating consistent spacing.

Add space inside and outside an element's boundary using padding and margin.

Spacing
2:48
Coming soon

Adjust display settings to determine the fundamental layout behavior of an element.

Display settings
2:54
Coming soon

Flexbox, also known as flex or flexible box layout, allows you to control the alignment of elements in a box in any way you’d like — solving complex layout problems that designers have been struggling with for years.

Flexbox gives you precise alignment and stacking control for all the contents inside an element, solving many layout problems that designers struggle with.

Flexbox
2:27
Coming soon

The grid layout in Webflow brings CSS grid to life on a completely visual canvas, giving you more direct control over your layout and design. With grid, you can reposition and resize items anywhere within the grid you define to produce powerful, responsive layouts — faster.

Use CSS grid to position content within a responsive layout.

Grid
6:04
Coming soon

The position settings in the Style panel allow you to set the relative positioning of elements, the float settings, and the clear settings.

Customize the position of your elements relative to themselves, to parent or sibling elements, or to the viewport.

Position
1:48
Coming soon

Responsive design

Coming soon

Learn how reflowing content, fixed sizing, relative sizing, and breakpoints (media queries) help to create responsive designs.

Intro to responsive design
2:21
Coming soon

Customize your designs for small and large screens using Webflow's 7 built-in responsive breakpoints.

Breakpoints
16:00
Coming soon

Interactions core concepts

Coming soon

A brief overview of triggers and animations.

Intro to Interactions
1:22
Coming soon

Triggers and animations make up the two primary aspects of any interaction: a trigger is what starts or continues an animation.

Triggers and animations
4:31
Coming soon

CMS & Dynamic content

Coming soon

In this video, we'll explain the differences between static and dynamic content, and learn why the latter is so useful for some of the most popular content types on the web, from blog posts to product pages.

An explanation of static and dynamic content.

Overview dynamic content
1:36
Coming soon

A CMS (content management system) is a tool for managing and publishing dynamic content. The website references that dynamic content on different pages. So anytime you or your client creates or changes content in the CMS, it updates all the pages where it’s referenced, instantly.

The Webflow CMS gives you full control over your content structure and how this content is designed throughout your project — all without you even touching a line of code.

In this video, we'll introduce some basic concepts behind the CMS, including:

  1. ‍Structuring content
  2. ‍Referencing content
  3. ‍Editing content

The Webflow CMS gives you full control over your content structure and how this content is designed throughout your project—all without touching a line of code.

Intro to Webflow CMS
2:02
Coming soon

Collection lists are one of two ways to add and design dynamic content from a CMS collection or an Ecommerce Collection. You can add Collection lists to any type of page. The other way to add dynamic content is with Collection pages.

Collection lists are one of the two ways to add and design dynamic content from a Collection.

Collection list
3:33
Coming soon

Learn how to filter and limit items in Collection lists.

Filter Collection lists
2:47
Coming soon

Whenever you create a new item (e.g., blog post, help article, etc.) in a Webflow CMS Collection, a page is automatically created for it. Collection Pages work like templates — the layout and design of the Collection Page will apply to every Collection item's page.

That means Collection Pages are essentially templates for recurring pieces of content, such as blog posts, help articles, or even landing pages.

In this video, we'll show you how to:

  1. Create a Collection Page
  2. Add and connect content
  3. Preview Collection Pages
  4. Link to a Collection Page

Plus, we'll show you the settings you can adjust for Collection Pages.

Structure and style Collection pages that work like templates and automatically update your design.

Collection pages
3:03
Coming soon

The Webflow Editor makes editing the website, and publishing new content, really easy for your client or your team. The Webflow Designer is a powerful tool for building websites, and the Webflow Editor is a simplified interface that’s focused on editing website content. You can edit content right on the page, or in the panels below the page.

The Editor lets you update and add content in a simple interface, which is great for clients or teammates who don't need the complexity of the Designer.

Intro to the CMS Editor
2:22
Coming soon

CMS Collection fields

Coming soon

The plain text field is a CMS field you can use in your Collections. This field is best used for basic textual content that doesn't need special formatting like headings, inline styles, or inline media like images or video. In this video, we'll explain how to add and use plain text fields in your Webflow CMS Collections.

‍The plain text field is a Collection field that is best used for basic text that doesn't need formatting like headings, inline styles, or inline media.

Plain text field overview
0:52
Coming soon

The rich text field is a CMS field used in Collections. Us it to give collaborators all the text formatting options they expect from a writing tool, including bold, italics, inline images, links, and more. In this video, we'll explain how to add and use rich text fields in your Webflow CMS Collections.

Rich text fields are used for long-form content you can format from the CMS panel in the Designer or the Editor.

Rich text field
1:16
Coming soon

The image field is a CMS field used in Collections that allows you and your collaborators to upload an image to your Collection items and use it in your designs. In this video, we'll show you how to use the image field.

Use the image field to upload images in dynamic designs and template pages.

Image field
1:24
Coming soon

The switch field is a CMS field used in Collections, usually as a filtering tool. Like any toggle, it has two values: Yes or No. Collaborators can toggle a switch on or off to specify, for example, if a blog post “is featured.”

The Switch field is a Collection field that is primarily used as a filtering tool. A switch is a field type which can have either of two values: Yes or No.

Switch field
0:58
Coming soon

The Reference field is a Collection field that you can add to any of your Collections. This powerful field allows you to link to an item in a different Collection. You can then use the referenced item’s content in Collection Lists and Collection Pages. In this video, we'll discuss some common uses of the Reference field, then show you how to make the most of it in your designs. To reference multiple items from a different Collection, use the Multi-reference field.

Use reference fields to connect items from different Collections.

Reference field
1:11
Coming soon

A multi-reference field is just like a reference field, except it allows you to reference more than one item. This is great for tagging systems, related content, and other instances where you want to connect one item to many others. In this video, we'll show you how to use this powerful field in your CMS-driven websites.

A multi-reference field allows you to associate one item with multiple others from another Collection, which is great for tagging and categorization.

Multi-reference field
2:31
Coming soon

Webflow 101 crash course

42
Lessons
Getting started
Getting started

Coming soon
Coming soon
Coming soon
Web structure
Web structure

Coming soon
Coming soon
Coming soon
Coming soon
Element basics
Element basics

Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Components
Components

Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Styling basics
Styling basics

Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Layout
Layout

Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Responsive design
Responsive design

Coming soon
Coming soon
Coming soon
Interactions core concepts
Interactions core concepts

Coming soon
Coming soon
Coming soon
CMS & Dynamic content
CMS & Dynamic content

Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
CMS Collection fields
CMS Collection fields

Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
Coming soon
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!
This video features an old UI. Updated version coming soon!

Intro to the Designer

Learn more

Transcript

Intro to HTML & CSS

Learn more

Transcript

Intro to the box model

Learn more

Transcript

Element Hierarchy

Learn more

Transcript

Navigator panel

Learn more

Transcript

Add Elements panel

Learn more

Transcript

Transcript

Transcript

Transcript

Transcript

Transcript

Transcript

Transcript

Transcript

Style panel overview

Learn more

Transcript

This is it. This is the Style Panel. From here, we can control each and every aspect of styling. We can create classes which let us reuse our styles throughout the project.

And we’re going to cover some of the more powerful features and functions of the Style Panel. And this will give us extremely granular control over the way elements are styled throughout our project.

Three things we'll cover: the top section which includes our Selector field, the anatomy of the style sections, and the indicators we'll see when we're using the Style Panel.

Let's start at the top. When we select an element, we can see the element type right at the top of the Style Panel.

Under that is the Selector field. This is where we'll see the option to select a class or a tag which will apply to the selected element. When we're styling, we'll see that class or tag right inside the Selector field.

The other feature here is the target icon. This will give us a page and project count — how many times this class or tag is used.

We can even click on this to toggle a pink or magenta outline to identify these elements if they're visible.

For now, we'll move on to the various style sections.

Some of these have an Advanced toggle. When we activate or deactivate that option, the number of options we can see increases or decreases.

We can also collapse any of these style sections. We can click right on the label for each pane to collapse or expand.

And as we go through Layout, Typography, Background — we can see all the CSS properties we can visually manipulate. We've created instructional content on each of these, but something we want to highlight right now is the indicators we can already see on the screen.

In the Style Panel, orange indicators tell us that a value is being inherited from somewhere else. If we click that orange indicator, we can see exactly where the style is coming from.

If our current class or tag has its own value for something, that's indicated in blue.

So when we collapse these style sections — when these panes are collapsed, the blue and orange indicators are giving us a quick overview so we can glance and see what's affecting the current class or tag.

Now, we can also use the Inheritance Menu to quickly visualize and select from the different classes and tags affecting our current styling. We can make a change — in this case we're changing the font — then, at any time, go right back to where we were styling.

So. We have the top section which contains our Selector field: show's what we're styling.

We have our style sections, which can collapse or expand — these panes give us control over all our CSS properties — all our styling options.

And finally, we have orange and blue indicators. Orange means whatever we're styling is inheriting a value from something else, and blue means we've added or styled something on the current class or tag.

We'll cover all of this comprehensively — but this is a good overview of the layout and the anatomy of the Style Panel.

HTML tags

In Webflow, HTML tags give us an easy way to control the default styling for a particular element, without creating a unique class. For example, you can define the default styles for all paragraphs by editing the All Paragraphs tag. Adding a class with styles will override these default styles.

Here’s what we’ll be covering:

  1. Accessing tags
  2. ‍Styling tags versus classes
  3. ‍Example 1: All H1 Headings tag
  4. ‍Example 2: All Links tag
  5. ‍Example 3: All Images tag
Learn more

Transcript

Tags give us a great way to control the default styling for a particular element type. As we already know, we can set a lot of defaults for our project — like font settings — inside our Body (All Pages) Tag. This is a great starting point.

So we're going cover three examples for styling Tags: Headings, Links, and Images.

Let's do Headings. If we drag in a Heading from our Elements panel? Make it an H1? Of course, we're getting some style values here, like font, from our Body (All Pages) Tag.

But let's use our dropdown, and select All H1 Headings. And just like that, we have access to styling the Tag. All H1 Headings throughout our project. Let's make some changes to the margin to affect spacing, and we can go in and affect font size. Maybe we want all our H1s to have a thicker font weight so we can adjust the font weight.

And now whenever we drag an H1 into our project, we're starting with these defaults.

This doesn't stop us from using classes. In fact, we can create a class on any of our H1s — maybe this one is a major Heading — so we'll make some changes to affect that. These changes are using the All H1 Headings Tag as a starting point. Of course, not every H1 in our project needs to look identical. Or we can remove that class, and check our orange indicator to see that, once again, things are being inherited from our All H1 Headings Tag.

So, headings here can take a lot of styling cues from the Body. When we modify our All H1 Headings Tag, we're affecting the default styling for H1s. We can style further by adding a class, and we can even do variants of those using combo classes.

The combo class takes its styling cues from its base class, which takes its styling cues from the Tag, which takes its styling cues from the body, which takes its styling cues from GQ.

That's Headings.

Let's power through Links. Here's a paragraph. Let's go in (double-click) then select some text. And we'll make it a Link. Let's do the same thing for some more text, again, making this a Link. And with any of these selected, let's go up in our Style panel and hit the dropdown to select All Links.

From here, we can mess with text decoration. Or we can change our default Link color. Keep in mind that All Links also serves as the basis for other types of Links. So in Hover here, we can change the font color. But if we go over again to the Elements panel, then we drag in a button, on hover, we can see that our All Links style affects this, too. So that's something to keep in mind when styling.

That's the All Links Tag.

Let's end on Images.

From our Asset Manager, we'll drag an Image right onto the page. And with any Image selected (like this one), let's go to our All Images Tag. Actually, this is a great time to go back and show that we can do this even after we've added a class or combo class. Let's create a quick class and hit enter. And now, we can click in over here, and select our Tag right from the dropdown: the All Images Tag.

Say, by default, we want Image elements we add to our project to have rounded corners. We can set our rounding, and not only can we see it on the Canvas, but if we go into the Asset Manager and pick a new Image to drag in? It's carrying those defaults from the Tag (the All Images Tag).

That's Images.

So. Tags. Do you need them? Hanes might argue "no." Others, like Dale, will argue "yes."

The truth is, the real answer is somewhere in between: it's entirely up to you. If you're creating a quick one-page project with a Heading and a paragraph, do you need to go in and configure all your Tags? Probably not. But as you scale, Tags can save you a ton of time by giving certain element types a starting point. A basis for styles on particular kinds of elements.

But that's it. Those are some of our thoughts on Tags.

Use classes to style elements

Making manual style changes to each and every element is tedious and time-consuming. And entering repetitive values for hours and then trying to update those values one by one can be frustrating. Classes save styling information that you can apply to as many elements as you want throughout your project.

Here we’ll cover:

  1. ‍Creating classes
  2. ‍Applying classes
  3. ‍Editing classes
  4. ‍Creating class variants by duplicating classes or by adding combo classes
Learn more

Transcript

Making manual style changes to each and every element is a pain. It takes a ton of time to enter repetitive values, and once you've done that, changes to those values can seem even more frustrating. Classes contain styling information, and you can apply these classes to as many elements as you want throughout your project.

We have three things to cover here — really straightforward: creating classes, applying classes, and editing classes. Let's create a class.

Now this page has a number of sections, and each section has a heading inside at the top. These headings have been dragged right in — nothing has been applied — nothing has been styled. So we're styling from scratch.

With our element selected, we can begin styling right away. We can make changes to our layout like margin. We can adjust typography — maybe choose a different font or adjust the font color. We can adjust all sorts of style values.

The big takeaway here is that the moment we began styling, a class was automatically created. And when we intend to reuse (or even just organize) this class, we can double click it to rename. Let's call this Best Heading Ever. And you can call it whatever you want.

As an alternative, you can select any element that doesn't have a class applied, and instead of styling first, you can actually start by clicking in and naming a new class.

That's creating classes.

Applying classes is where things start to get interesting. Now we can see inside our Selector field that this element — this heading — has the Best Heading Ever class applied. But right now, this is the only element that's using that class.

So let's go down to another heading and select that one. And if we click inside our Selector field, we can type in Best Heading Ever. Hit Enter. And the class has been applied.

Let's do it again to this heading. This time, we can see the class name appears as we start typing it out, so we can use the keyboard arrows or the mouse to select our class.

Now what if an element already has a class? Here's a heading which already seems to have a different class listed in the Selector field. If we hover over and click on the down arrow, we can remove that class. And just the like the others, we can click inside and apply our Best Heading Ever class.

That's applying classes.

Finally, let's edit our classes.

Once a class has been created, we can select any element that's using our Best Heading Ever class.

When we go in and make a change, that change affects all instances where that class is used throughout the project. No more manually changing each and every tiny detail. You do it once. Classes do the heavy lifting.

And if we want to rename our class? Maybe it deserves a promotion? Again, just double-click, and type the new name. This will change the name of the class throughout the project.

So, we can create classes which contain all our style information. We can apply classes to as many elements as we'd like. And of course, we can edit the styling on these classes, and those changes will affect the styling on each and every element that's using that class.

Combo classes

Lesson info

After you’ve applied a class to an element and added styling, sometimes you might want to make a small styling change on one instance of this class, without affecting other elements with that class. In such cases, instead of creating a new class and recreating the same styles, Webflow lets you create what we call a combo class, and apply style overrides to create a unique variation.

In this video, we'll walk you through:

  1. ‍Creating combo classes
  2. ‍Applying combo classes
  3. ‍Overriding styles
  4. ‍Understanding the differences between combo classes and duplicate classes
Learn more

Transcript

Sometimes it's impractical to create separate classes every time you want to make a change. If we've taken the time to create the most glorious heading on the planet, and we want to use that class as a starting point for a variation? If we want the same thing somewhere else but in light blue? We could create a new class and go through the entire process again. Or we can use a Combo Class.

We'll cover three aspects of Combo Classes: creating a Combo Class, overriding Styles, and selecting the Base Class. Let's create a Combo Class.

And we'll work with this button. There are a lot of buttons on this page, all of them completely unstyled. And what we'll do is click to type in and create a class (since we intend to reuse this styling).

And we can go in and make changes. Like setting a background color on this class. Or, going in under typography and setting a font color. And, we might want to change the default padding on the button, so we can make adjustments there, clicking and dragging while holding option or alt to affect opposing sides of the button at the same time. And finally, let's round things out by going down to the radius. Add some rounding on the corners.

Now, we already named this class, so we can go through and apply it to some of the other unstyled buttons on the page. We're simply selecting each of these buttons, and applying the class we just created to each of them.

But wait a second. This section, when we apply our class to the button, doesn't have the greatest contrast. We could remove the class and try and remember all those changes — creating a new class from scratch. Or, we can create a Combo Class. We're going to click in the blank space to the right of the Base Class (the one we created before), and type to create our Combo Class. And of course hit enter.

And it’s worth noting that a Combo Class, just like a regular class, is applying directly to the element. So if we check out any of the other buttons? Nothing's changed.

But with our button down here? Once we've created a Combo Class, we can add or override Styles without affecting the original class.

That leads us to the next step: overriding Styles.

Because our selector field has the Combo Class showing up here, any Styles we add or override will only affect the Combo Class.

Let's check out these indicators — we can see that our Background Color and our Font Color — all the Style values we added before, they're all coming from the Base Class we created earlier.

Let's change that. We'll adjust our Background color — we can go in and change that value. And we'll go in to do the same thing — this time making a change to the Font Color.

Of course, each of these changes has turned the orange indicator blue. We know that means the currently-selected class (our Combo Class) has its own Styles that are now being set.

Now, those pre-existing Style changes aren't necessary. You can add new Styles to a Combo Class that weren't explicitly set in our Base Class, like all-caps.

But that's how we override and add Styles on a Combo Class. Let's talk about the Base Class.

Again, because we're styling the Combo Class, these Style changes aren't affecting our Base Class. That's because the Combo Class is a more specific selection.

But let's select one of the original buttons and make a change to the font size. Notice how doing that affects the button that has the Combo Class applied. That's because we didn't override the font size. If we click in and take a look at our orange indicator, we can see that the font size, that change, is being inherited from our Base Class.

We can also select the Base Class from our Selector Field. Simply click the dropdown, and select the Base Class. Even though our newer button still has that Combo Class applied, we're currently styling the Base Class: changing the font here will affect our Base Class everywhere. We can switch back to styling our Combo Class by simply pressing Go back. And if we check our font here in the Combo Class, we can see it's being inherited right from the Base Class we just modified.

So, Combo Classes save us a ton of time. We can create Combo Classes (which inherit the styling from our Base Class), we can override or add our own Styles, but we can still go in and select the Base Class to make changes at any time.

States

To add some interactivity to your elements in Webflow, you can change the way they look and behave using states. As you're styling an element, clicking the States menu lets you toggle between the various states, like Hover and Pressed, you can access and style.

In this video, we'll explain the four states you can style for any element:

  1. None
  2. ‍Hover
  3. ‍Pressed
  4. ‍Focused

Then show you how to style those states to indicate interactivity. Then we'll dig into applying transitions to smooth out the change from one state to another, and finally, discuss the "current" state, which is a handy indicator for navigational links.

Learn more

Transcript

States. They're not just for links, but they're usually used for links. You can change the way elements look and behave by adding styling on different states. This adds interactivity to almost any kind of element.

And as we're styling, clicking the States dropdown lets you select between the various states you can access and style.

And there are four states we're going to cover: None (or normal), Hover, Pressed, and Focused.

Let's start with None: the normal state. This is the basis or the starting point for all other states.

And if we select this button, which has the Beautiful Button class applied, any styling changes we make are going to affect this state.

That's None. What about Hover?

If we select the States dropdown and press Hover? We're now styling the Hover state. And it's indicated in green.

We'll keep this simple, but you can make any number of styling choices. We'll choose to change our background color to green.

And we can switch back to None, and when we hover over with our pointer, the background color changes to green. Also, notice how the current state for the selected element is shown on the Canvas. As we're styling the Hover state, we see what the Hover state looks like on the Canvas. Whatever state we're in, the changes we make will be visible on the Canvas until we deselect or otherwise leave the state.

If we click the States dropdown, we now get a blue indicator to the right of Hover. That means there's a new value that's being set in the Hover state: in this case, we changed the background color to green.

We can switch between our Hover and None states any time to make changes to either.

That's Hover. Let's do Pressed.

And in CSS this is also called "Active" but it indicates what the styling will look like while the pointer is clicking down inside the boundary of our element.

And just like Hover inherited values from the None state, pressed will do that, too, but it'll also inherit values you've entered in the Hover state that override the None state. That's why the background color on Pressed is green.

We can change the background color again, this time selecting a darker green for this example. And let’s deselect our element. If we test this out? We see all three states: Normal, Hover, and Pressed.

That's the Pressed state.

And finally, let's cover Focused.

And this state is perfect for setting styles on elements that accept input — elements we can switch to by pressing Tab on the keyboard, like text fields.

If we're styling a class that's affecting each of the text fields here on the Canvas, any changes we make will show up when that text field is focused.

Now like any great artist, you might want a really, really bold, red glow on the text field when it's focused. We can make that adjustment to the Focused state, and when we go into Preview, that styling choice is really, almost painfully evident as we focus on each of our text fields.

So, those are the standard states we can style on elements throughout our projects.

Layout settings

Learn more

Transcript

Spacing

In the Style panel, you can define the spacing (margin and padding) for each element. In this article, we’ll cover what each of these layout controls is and how they’ll affect your elements. These properties make it possible to create responsive websites with content that reflows while creating consistent spacing.

Learn more

Transcript

Display settings

Learn more

Transcript

Flexbox

Flexbox, also known as flex or flexible box layout, allows you to control the alignment of elements in a box in any way you’d like — solving complex layout problems that designers have been struggling with for years.

Learn more

Transcript

Grid

The grid layout in Webflow brings CSS grid to life on a completely visual canvas, giving you more direct control over your layout and design. With grid, you can reposition and resize items anywhere within the grid you define to produce powerful, responsive layouts — faster.

Learn more

Transcript

Position

The position settings in the Style panel allow you to set the relative positioning of elements, the float settings, and the clear settings.

Learn more

Transcript

Intro to responsive design

Learn more

Transcript

Transcript

Intro to Interactions

Learn more

Transcript

Triggers and animations

Learn more

Transcript

Overview dynamic content

In this video, we'll explain the differences between static and dynamic content, and learn why the latter is so useful for some of the most popular content types on the web, from blog posts to product pages.

Learn more

Transcript

So many of our projects are all about content. And sometimes we have a lot of it. Back in the Stone Age, we'd have to configure all of this content by hand. That's what we mean by "static content." It stays just as we created it.

We'd get this perfectly-designed blog page exactly how we'd like it, and what do we do? We duplicate. And then we go in and change the content on our duplicated page. We just created another blog post.

But then what happens when we want to change part of our design? We want to add something new on each page? Well, that's fine. We just go back and change it on the other page, too. Except that's not how it works. Because this project has 400 blog post pages.

We've all been here. That's static content. We have to do everything by hand.

With dynamic content, the concept changes entirely. Dynamic content — whether it's a name or a color or a photo or a number or an email address — any content. It can be added or imported whenever to a database. And your design? No matter how perfect it is or how detailed you make it or how many pages you have? You just create it once. And you can pull anything from that database. So everything gets built out automatically. No more going back and updating everything one-by-one.

This works for anything you can imagine, because you can customize the database to have any kind of content you want. And you can get super granular with controlling and organizing your content. And with that, you can do blogs, and restaurant menus, and development projects, and team member pages, news sites, and fake news sites.

But that's the main difference. Static content: entering and tweaking things one-by-one. And dynamic content: you can reference your custom database. You get to control everything, but the content is built out automatically using your design.

Intro to Webflow CMS

A CMS (content management system) is a tool for managing and publishing dynamic content. The website references that dynamic content on different pages. So anytime you or your client creates or changes content in the CMS, it updates all the pages where it’s referenced, instantly.

The Webflow CMS gives you full control over your content structure and how this content is designed throughout your project — all without you even touching a line of code.

In this video, we'll introduce some basic concepts behind the CMS, including:

  1. ‍Structuring content
  2. ‍Referencing content
  3. ‍Editing content
Learn more

Transcript

The CMS is how we control and work with our dynamic content. In the Webflow CMS, the data structure is very straightforward, and we'll build from the bottom up:

At the very bottom, we have our content fields. These fields let us capture or input content – whether we're doing this one-by-one, or by importing a CSV with a ton of data. All that content is put in fields.

Of course, we're usually dealing with multiple items, each of them made up of these fields, and those items are all grouped together into a collection. A collection is the top-level container for our content.

So: if we have a collection of team members, each team member is an item. Each item (or team member) has fields of content.

That's the structure of the Webflow CMS.

Ready to use that collection in a project? Two ways to do that: we can use a Collection List, which lets us drop in collection content anywhere. And, of course, we have Collection Pages. Design one Collection Page, and your other collection items will follow suit — Collection Pages are automatically created for each collection item.

When you’re using collection lists or collection pages, they can be designed in any way to fit your brand.

You can change or add more content to your collection at any time. You can do this from the Designer, or, you can use the Editor. The Editor lets collaborators log in and access these collections, which makes it quick to add blog posts, employees, news. All of this plugging into the fields you created. Or, collaborators can edit content right on the live website. Press Publish from the Editor? And that content is now live.

Now. We've created detailed content for each aspect of the Webflow CMS, but here we've covered the basics:

We have collections, which contain each item made up of fields. We can use any of the content from these collections in our project, whether it's the Collection List element or Collection Pages. And we have the Editor: a powerful way for site owners to add or change content, and publish to bring that content live.

Collection list

Collection lists are one of two ways to add and design dynamic content from a CMS collection or an Ecommerce Collection. You can add Collection lists to any type of page. The other way to add dynamic content is with Collection pages.

Learn more

Transcript

Collection lists are one of the two main ways we can design and develop with content from a collection. Here's a sample collection we created for a group of team members. From any page in our project, we can access the Collection List right from the Elements panel, and drag it right onto the Canvas.

We want to quickly cover three aspects of a collection list: the basic layout, binding to a collection (this is super powerful), and collection list settings.

Let's do basic layout.

We're dragging the collection list and dropping it right on the Canvas. So we have a bunch of empty purple boxes. And though we're just getting started, we can choose our collection from the dropdown, and we can play around with layout options.

Regardless of the layout we choose, if we go to Preview, we'll see the current design: literally nothing's there. Let's go back out of Preview. There's nothing there because we haven't referenced any of our content.

Since our collection list gives us access to anything from a collection, we can drop an element right into any collection item in our collection list. Let's make this heading an H3, but it could be any text element.

And we can bind that element right to a specific field from our collection. This is just getting the name from our team members. And that's it. We're looking at the content — we have an H3 for each of our items in the collection list.

Let's keep going. We can drag in an image element. And when we're dropping these elements in, they're static. They're static until we bind them to something from a collection. And when we do? Each item in our collection list is referencing the relevant field.

All we're doing is dragging in normal elements (static elements) and binding them to specific fields in our collection.

We can, of course, add styles to any of these. And as we're adjusting here, we can see that changes in a collection list are done in lockstep. That is: changing anything in one collection item affects the others. That's by design. If we drag in a div block to wrap and style the content in each item? Those changes are happening in all our collection items.

There's still a major advantage to using classes — that is: while everything's done in lockstep in this collection list, we might want other collection lists on other pages throughout our project. Of course, classes will empower us make style changes project-wide.

And we're accelerating here (quite a bit) so you don't have to sit through each and every frame, but the idea here is that you can bind dynamic content to static elements in a collection list.

That's binding. Let's look at our settings.

We can select our Collection List Wrapper element (or our Collection List element) and adjust our layout at any time.

Our collection list settings also let us add filters. Filters empower us to show only the collection items we want — collection items that match one or more criteria.

We can also choose all sorts of options related to sort order — how we want the collection items to be sorted. Maybe based on when the collection item was updated: newest to oldest.

If we go back into the CMS and into our collection? And we go inside one of our items to make a change? Of course, we know that'll affect how recently this item has been updated.

Which means back in our collection list, we'll see that Dale is displayed first. We're sorting based on when the collection list was updated. Newest to oldest.

We can also put limits on the number of collection items displayed. This will only display the number of items specified here.

So. Collection lists. We can drop them in anywhere. They give us access to anything from a collection. We can choose our layout, we can bind collection content to elements inside the list, and we can, of course, configure our settings to tell the collection list how to sort and display the items in our design.

Filter Collection lists

Learn more

Transcript

Collection pages

Whenever you create a new item (e.g., blog post, help article, etc.) in a Webflow CMS Collection, a page is automatically created for it. Collection Pages work like templates — the layout and design of the Collection Page will apply to every Collection item's page.

That means Collection Pages are essentially templates for recurring pieces of content, such as blog posts, help articles, or even landing pages.

In this video, we'll show you how to:

  1. Create a Collection Page
  2. Add and connect content
  3. Preview Collection Pages
  4. Link to a Collection Page

Plus, we'll show you the settings you can adjust for Collection Pages.

Learn more

Transcript

While Collection Lists can go on any page and reference content from a Collection, we can also design and configure Collection pages. If we build a Collection page for one Collection item? Content automatically populates for every other item in the Collection. It's like magic in that it can save us hours and hours in the development process — and even more time as we add new content down the road.

Just like Collection Lists, we'll cover basic layout and binding content, but we're also going to cover linking to a Collection page from somewhere else in the project.

If we go to our Pages Panel and select our Collection page—

Actually, let's go back in time for a few moments. Before we made this video lesson. We went in and made a new Collection. We made a Blog Collection. And we filled it with dummy content. The point here is this: when we make a Collection, a Collection page...is automatically created.

Let's go back to the present. We're building this just as we'd build another page. Our navbar, our footer, sections, and headings and images, and paragraphs, and rich text elements. Now you might say "how did that get built so quickly?"

But the real question you should be asking is "how is this Collection page any different than a static page (a normal page in our project)" And the answer is: it isn't.

Just like a Collection List, elements dropped into a Collection page are static until we bind them to something else. So let's bind them to something else.

We can take any of our elements — like this one — and bind it to the relevant field. And it's not pulling from that field on one item. It's pulling from that field on all our items in that Collection. How do we prove that? The scientific method.

Or, we can — at any time — choose from our Collection items (in this case: blog posts) in the drop down. Visit any of those? And the content we just bound updates on all these pages.

But is this just for text? No. This is not just for text. This is for everything. We can get our background image from the Collection. We can select this button and get the URL from the Collection. And the text. We can get that, too.

And when we switch our Collection items using the dropdown? Each page has automatically been generated. Now 20 blog posts were created in the time it took us to design and develop one. We put Dale to the test to see how long it would take someone to duplicate and style each page one-by-one. Some say he's still working on it to this day.

Finally, let's talk about linking to these Collection pages.

Here's a static page. We have a Collection List we made for our featured blog posts. Let's drag a button right into our Collection List. And for fun, let's pull the button's background color from a color field we have in our Collection.

And now we'll simply go in under our Link Settings, and choose A Collection page. Which one? Current Blog Post. That'll link each button in these Collection items to the Collection page created for each Collection item. Or in English: these buttons will take you to the related blog post.

So. Collection pages? Automatically generated when you create a Collection. We covered the layout of a Collection page, we covered binding content to elements in that layout, and we covered linking to these Collection pages from elsewhere in our project.

Intro to the CMS Editor

The Webflow Editor makes editing the website, and publishing new content, really easy for your client or your team. The Webflow Designer is a powerful tool for building websites, and the Webflow Editor is a simplified interface that’s focused on editing website content. You can edit content right on the page, or in the panels below the page.

Learn more

Transcript

The Editor is an interface we can use to access and edit the contents of a published site. It's what collaborators (like clients, customers) — it's where anyone can log in and get access.

If you're in a Webflow project, you can visit the Editor from the Designer over to the left, or from the Project Settings over to the right. Or, you (and any collaborators) can visit using the URL through your browser. Just add edit? Except, it's now become obvious: the question mark is at the beginning of edit. Let's try that again: just add question mark edit.

Back in our project, from our Project Settings, we can go right on over to Editor. We can add and configure permissions for our collaborators, and even control branding. We can add custom branding for our organization, or a client's organization. We can do that from Project Settings.

Three brief things to note about the Editor:

#1: You can literally manipulate content on the page. Want to change some text inside a heading? You can go in and change some text inside a heading. Want to replace this image used in the image element here? You can go in and replace the image.

This applies to content in your project (we're switching back over here to the Designer) in which, on any editable element, we've gone over to our Element Settings panel and checked "Collaborators can edit this element." What does it mean when that's checked? It means collaborators can edit this element. If it's unchecked, they'll still see it in the Editor but it won't be editable.

#2: second thing to note. If you've created one or more collections, collaborators can access them. They can go into any collection. And they can click to modify an existing collection item — like a blog post — or, let's cancel out of that, they can of course create a new item — in this case a new blog post.

On the top-right, if any collaborator wants to come back to this post later — if they don't want it to publish even if we publish other changes — they can check "Draft."

That's editing collections.

#3 — the final thing we want to mention here — is that changes in the Editor? These aren't updating in real-time. The content you're changing won't go live until you or a collaborator publish the project — whether through The Editor here, or through the Designer.

Speaking of the Designer, if we're visiting the Editor from our Project? We can get back to it at any time by switching right back over.

That's the Editor. Actually, this is the Designer. That's the Editor.

Plain text field overview

The plain text field is a CMS field you can use in your Collections. This field is best used for basic textual content that doesn't need special formatting like headings, inline styles, or inline media like images or video. In this video, we'll explain how to add and use plain text fields in your Webflow CMS Collections.

Learn more

Transcript

Plain Text is usually short-form text that you're planning to use or style in a project. It's important to note that Plain Text isn't an actual HTML element. Instead, this text is plain and un-styled: it will become bound to whatever element you specify. For instance:

A Plain Text field can have this text in it. We can use that text anywhere we want inside a Collection List or a Collection Page. Here's a heading: let's get the text from that Plain Text field. Hey, look: it worked perfectly. Here's a button: let's get the text from that same Plain Text field. Another success.

Plain Text can be bound — essentially it can feed into anything you want. This can include headings, and paragraphs, and links, and text blocks for things like category tags, and those little sale banners people like to put in the corners of product images.

Plain Text: any time you need a block of unformatted text to use in an element.

Rich text field

The rich text field is a CMS field used in Collections. Us it to give collaborators all the text formatting options they expect from a writing tool, including bold, italics, inline images, links, and more. In this video, we'll explain how to add and use rich text fields in your Webflow CMS Collections.

Learn more

Transcript

If a Plain Text field is for creating short-form, unformatted text, a Rich Text field is for long-form content that you can format from the CMS in the Designer, or from the Editor.

Rather than continue talking, let's continue talking while looking at how we can add and format rich content inside a Rich Text field.

Right now we're in the Editor. And we have an extraordinary amount of freedom here to create and format our content. When would we use this?

Blog posts. Articles. Anytime we need sectioned-off content. Biographies. Anything really. And we can control the styling for the rich text content — each kind of element (like headings, lists) — we can do this in the Designer using the Rich Text Element. That way collaborators can focus on content — and that content conforms to your design.

So the goal — or the question becomes this: how do we have a Rich Text Element in our project get the Rich Text content from our collection? Well, we drag a Rich Text Element into our project, and we get the Rich Text content from our collection. We cover the Rich Text Element itself in separate content we've created, so if you want a crash course on working with Rich Text inside the Designer, we highly recommend checking that out.

Rich Text field: Perfect for long-form text, or any time you want collaborators to have the ability to format this type of content.

Image field

The image field is a CMS field used in Collections that allows you and your collaborators to upload an image to your Collection items and use it in your designs. In this video, we'll show you how to use the image field.

Learn more

Transcript

The Image field. To say it's life-changing in the context of CMS is hyperbole. But not really. Here's why:

You might be thinking to yourself, "isn't this just a field that lets someone upload an Image? And to make it work, don't I choose an element and pull that Image to set it as a background Image?" Well, yes. That is one potential and frankly amazing use of the Image field.

But what about here? Fairly good-looking blog previews [Collection List]. Great content, meaningful words . The top div block here has a nice heading. Let's select that div and head over to the Element Settings Panel. And right here, we have access to this wonderful little checkbox: Get background Image. Bind it to the Image field? Now our div block is using those Images from our collection in the background.

But we can also bind directly to an Image element. Like a profile picture. Or an icon.

So the Image field can be used to bring in an Image for use in an Image element, like a profile picture or an icon, and we can use them as background Images just like we'd manually configure background Images on static content.

Switch field

The switch field is a CMS field used in Collections, usually as a filtering tool. Like any toggle, it has two values: Yes or No. Collaborators can toggle a switch on or off to specify, for example, if a blog post “is featured.”

Learn more

Transcript

Switches are extremely useful when you're looking to filter elements based on something binary. An on or off or yes or no option.

Is this film black and white?

Is this company a non-profit?

Is this blog post featured?

This concept can be extended indefinitely. And when you add a filter? Simply select the Switch, and specify whether you're looking to display items that have the Switch on, or those that have the Switch off. The result of this filter is displaying only the results that fit this new Switch.

We can also create a Switch called "Show contact form" and go into our Collection Page? We can actually select an entire element inside — for our sign up div block — and set conditional visibility. We can go in and set a condition that shows this div block only if "Show contact form" is Switched on.

So. Switches. The word sounds odd the more you say it. The field is a powerful and straightforward way to work with dynamic content.

Reference field

The Reference field is a Collection field that you can add to any of your Collections. This powerful field allows you to link to an item in a different Collection. You can then use the referenced item’s content in Collection Lists and Collection Pages. In this video, we'll discuss some common uses of the Reference field, then show you how to make the most of it in your designs. To reference multiple items from a different Collection, use the Multi-reference field.

Learn more

Transcript

A Reference field is really simple and enormously powerful. The simple part is that it lets us reference fields from an item in another collection.

Why is that important? If we have a blog collection, we already know that a collection list or collection page gives us access to the items in that collection. A reference field? This lets us grab content from another collection.

And here's the powerful part: We have two collections in our project (Blog Posts and Authors). When we write a blog post, we don't want to have to do the bio, and the picture, and the name for that matter — each and every time we write a new blog post. These are all fields which we could create and populate in our Authors collection.

Back in our Blog Posts collection? When we add a Reference field? We're simply granting access to the Authors collection. And when we're creating a blog post? The Reference field will let us select the author in that collection.

And how do we build with this? We still build using our Blog Posts collection, but because we're referencing the Authors collection, we can build with those fields as well.

So. Reference fields. With them, we can reference fields from items in another collection.

Multi-reference field

A multi-reference field is just like a reference field, except it allows you to reference more than one item. This is great for tagging systems, related content, and other instances where you want to connect one item to many others. In this video, we'll show you how to use this powerful field in your CMS-driven websites.

Learn more

Transcript

A Multi-Reference field (which is short for multi-item reference field) does just that. Instead of a Reference field, which lets us pick one item from another collection, a Multi-Reference lets us pick multiple items.

So we have our blog posts. And we have our author at the top of each post. Now Helen is known throughout the industry for hogging the limelight. However, in a new initiative, we decided to credit other contributors to our blog posts.

So we have a little spot on the bottom for contributors. This is all static content right now — it's just the design. Nothing's been added yet from our collection.

Let's go into the CMS, into our Blog Posts collection, and, of course, Settings. All we have to do? Is click multi-reference. We can name the field Contributors, we can add some clarifying help text so anyone else using the CMS or the Editor knows what to do, but the important part here is that we point our multi-reference field to our Authors collection. Here's why:

If we save, and then go into our any of our items, like this blog post (by Helen), we can now see our multi-reference field. And all we have to do? Is choose from the list — the other authors who contributed to this post. Once we've done that, let's save.

Now we've only done this on one post so far, we can go back and fill the rest in later. So we're going to build this using the blog post we just configured.

Let's drag in a collection list so we can list the contributors. And from the Collection dropdown, we can see our brand-new field right there.

Notice how the authors already show up in the list. And from here, this is just like a normal collection list. Let's go over to our Elements panel and grab a heading. We can drag it right into any item, and of course, we'll get the text from our collection.

Our authors are showing up just fine. Warp speed. Actually we're just changing the velocity of the footage we captured so you don't have to watch us tweak every detail.

Alright Dale, let's take it down to normal. Dale. Dale! Okay, we're fast-forwarding through the entire— can we? Thank you, Dale.

So we just finished setting up our contributors in this collection list. And if we go back into the CMS? And we add contributors to another item in our collection? Another blog post? We have our multi-reference field from which we can select our contributors. We can add as many as we'd like.

And once we're done, let's save. And then go back to our collection page. And from the item dropdown, let's pick that blog post we just configured. And at the bottom? We have all our contributors showing up in the collection list.

And that's it! Multi-reference fields give us access to multiple items in another collection.

Requirements

  • Free (or premium) Webflow account — sign up
  • Chrome or Safari browser

Related courses

Related courses

Notes:

  • The main video will get replaced with javascript after the site loads either from the browser's url if there's a videoUrl there, otherwise from the first video in the nav
  • We should pick some default video so people who have javascript turned off load some webflow video instead of wistia example currently there. do that in the embed with the iframe ^
  • The embed at the bottom of the page has some configurable options at the top of that code block. eg: you can tweak what the urls look like, but once this launches don't change them
  • Right now the classes used in the side nav can be edited by adding an element there with those classes. If you'd rather edit the css for those directly in the code you can add a css block in a new html embed at the top of this page for that, if doing that consider changing their names to not conflict with classes edited in the designer