V4 gives you three layout elements where V3 gave you containers: the Div Block, the Flexbox and the Grid. Elementor’s help explains each one in a line, and the editor shows them with identical settings, so it’s fair to wonder why there are two. Here’s what Elementor recommends, what really differs, and how I combine them in the Elementor V4 components I build for Element UI, the Elementor component library. Checked against Elementor 4.3.4, October 2026.
What’s the difference between Div Block and Flexbox in Elementor V4?
Elementor positions the Div Block as the plain, lightweight container for simple layouts, and the Flexbox as the container for complex, precise ones. In the editor they have exactly the same settings. What differs is how each one starts: a Div Block stacks whatever you put in it, and a Flexbox lines it up in a row.
Open Style > Layout on either and you’ll see the same Display options (Block, Flex, Grid or None), and once Display is Flex, the same Direction, Justify content, Align items, Gaps and Wrap. A Div Block simply arrives on Block, and a Flexbox arrives on Flex. Set a Div Block’s Display to Flex and it behaves like a Flexbox.
| Div Block | Flexbox | Grid | |
|---|---|---|---|
| Elementor positions it for | Simple layouts | Complex, precise layouts | Rows and columns of items |
| Starts as | Block: children stack | Flex, in a row: children sit side by side | 3 columns by 2 rows, 20px gaps |
| Gap, alignment, direction | Once you set Display to Flex | Ready to use | Gap and placement ready to use |
| Usually best for | The outer wrapper | The layout inside it | Cards, features and logos |
How do I use Div Block, Flexbox and Grid together?
Usually, the Div Block holds the section, the Flexbox does the layout, and Grid steps in for collections. That’s how I start most V4 sections, and it lines up with Elementor’s own split between simple and complex.
Div Block (section tag) the outer wrapper: background, padding, width
└── Flexbox (column) the layout
├── Flexbox (column) heading, text and buttons, spaced with gap
└── Grid cards or logos, when the section has a collection
The outer wrapper is the simple job. It holds the section’s background, padding and maximum width, and it has one child, so there’s nothing to align and no reason for flex settings. A Div Block does it as it comes, and setting its tag to Section gives the page the right structure.
Everything inside is the complex job, so it’s Flexbox. Rows of buttons, a heading above text, a card’s contents spaced evenly, a row on desktop that turns into a stack on mobile: that’s direction, alignment and gap, which a Flexbox has ready from the start. Set gap on the Flexbox rather than margins on each child, so the spacing stays even when you reorder things.
Grid is the occasional one. When a section repeats the same item in rows and columns (feature cards, pricing tiers, team members, a logo wall), a Grid keeps them lined up where Flexbox would need wrap and width settings to fake it.
It’s a starting point, not a rule. Some sections work better with a Flexbox as the outer wrapper, and since switching is one setting, nothing’s lost either way.
If you’re coming from V3, the Flexbox is the element that behaves most like the flexbox containers you know, which the Elementor flexbox containers guide covers in detail.
Is the Div Block really lighter and faster?
Lighter, yes, but only by a few lines of CSS, so don’t choose it for speed. Both output the same single HTML element; the Div Block just starts with less switched on. You won’t measure a difference on a real page. Choose by the job each element does.
Two small differences come with that lighter start. The Div Block has a 30px minimum width, so an empty one never collapses to nothing while you build. And Elementor gives the Flexbox and Grid a 0.3 second transition on background, border, shadow and transform changes, which the Div Block doesn’t get: a hover background on a Flexbox fades in, while on a Div Block it switches instantly unless you add a transition yourself.
When does Grid fit better than Flexbox?
When the same item repeats in rows and columns: cards, features, logos, team members. A Grid keeps every item lined up across both directions without wrap or width settings, and it drops to one column on mobile on its own. For everything else, Flexbox is simpler.
A new Grid starts with 3 columns, 2 rows and 20px gaps. Watch the rows. Elementor’s own code notes that empty rows don’t collapse, so a Grid holding three items still reserves its second row and leaves an empty band below them. Set the rows to match the content, or switch the demo above to Grid to see it happen.
Can you switch a Div Block to Flexbox, or Flexbox to Grid?
Yes. Open Style > Layout and change Display: Flex turns a Div Block into a Flexbox, and Grid turns a Flexbox into a grid. Nothing inside is lost, so don’t agonize over the first choice. Start with the one closest to the job and switch if the layout changes.
| You’re building | Start with |
|---|---|
| A section’s outer wrapper | Div Block, with the Section tag |
| A heading, text and buttons | Flexbox, as a column with gap |
| A row of buttons, logos or avatars | Flexbox |
| A row on desktop and a stack on mobile | Flexbox |
| Repeating cards, features or logos | Grid |
Where Element UI fits
The Elementor V4 components in Element UI are built the same way: an outer wrapper, Flexbox for the layout inside and, where a section has a collection, a Grid. Paste one in and open the Navigator to see the structure in a real section. They’re lightly styled with placeholder content and use local styles only, so you can keep those or connect your own Classes and Variables. For what else changes in V4, start with Elementor V4 and the atomic editor, and sections vs containers vs atomic elements compares V4’s layout with the two that came before it.
Frequently asked questions
Is the Div Block the same as a V3 container?
No. V3 containers belong to the classic editor. The Div Block is a V4 atomic element: it's styled in the Style tab with Classes and Variables, and it starts as a plain block rather than a flexbox.
Can you nest Div Blocks and Flexboxes?
Yes. Elementor's atomic layout elements can be nested inside each other freely. I keep it to three or four levels; past that, the structure is usually doing work that gap or alignment could do.
Which layout element does Elementor V4 use by default?
The Flexbox. With the atomic editor turned on, Elementor's default container is the Flexbox element.
Does a Div Block support gap?
Only once you set its Display to Flex (or Grid) in Style > Layout. In its default block display, children stack with no gap, so you space them with margins.
Is the Grid element free?
Yes. Grid arrived in Elementor 4.2 as part of free Elementor.


