0
100
200
300
400
500
600
700
800
900
1000
1100
0
100
200
300
400
500
600
700
800
900
1000
1100
Guide · Auto layout & frames

Fill Container vs Hug Contents in Figma: Why Is One Missing?

Fill container only appears on layers that sit inside an auto layout frame. If it's missing or greyed out, the parent isn't an auto layout frame (or the layer is a top-level frame, which can never fill). Hug contents is the reverse: it only works on a frame that has auto layout itself, and it stops working when any child is set to Fill container.

Every layer in auto layout has three sizing modes for width and height: Fixed, Hug contents and Fill container. Once you know which side of the parent-child relationship each one belongs to, the missing options make sense.

Updated Sep 24, 20264 min read
On this page
01

Fixed, Hug contents and Fill container

  • Fixed: the layer keeps the width or height you type. Works everywhere.
  • Hug contents: an auto layout frame shrinks or grows to wrap its children plus padding. Only auto layout frames have it.
  • Fill container: a child stretches to take the space its auto layout parent has left. Only children of auto layout frames have it.

Width and height are set separately, so a button can hug its label horizontally and have a fixed height, and a card can fill the row's width while hugging its content vertically.

02

A worked example: a button and a form

Take a button: a Horizontal auto layout frame with an icon and a label. Set the button to Hug contents on both axes and it grows as you type a longer label. Now put that button in a Vertical form frame with a fixed width of 360px. Switch the button's width to Fill container and it stretches to the form's width minus padding, while its height still hugs.

03

Why Fill container is not showing or greyed out

  1. The parent has no auto layout. This is the answer in the Figma forum thread on Fill being greyed out. Select the parent and press Shift+A, and Fill container appears on its children.
  2. The layer is a top-level frame. A frame sitting directly on the canvas has no container to fill, so the option never shows. Put it inside an auto layout frame first.
  3. The layer is in a group, not a frame. Groups don't have auto layout, so their children can't fill. Frame the selection with ⌥⌘G / Ctrl+Alt+G and add auto layout.
04

Why Hug contents is not working

Hug has two common blockers. First, the frame needs auto layout. A plain frame has a fixed size and doesn't know about its children, so add auto layout with Shift+A. Second, a parent can't hug a child that fills it. If a child is set to Fill container, the child waits for the parent's size and the parent waits for the child's, so Figma won't let the parent hug. Set the child to Fixed or Hug, and the parent can hug again.

Also check the padding. A frame can't be smaller than its own padding, so a hugging frame with 40px of padding on each side is never narrower than 80px, even when empty.

If a layer shows Fill container but behaves like a fixed size, switch it to Fixed and then back to Fill. Forum users report this resets it.
05

How to remove fixed width or hug

There is no "none" option. You swap one mode for another in the Width or Height dropdown in the right sidebar. To stop a frame hugging, pick Fixed and type a size. To get rid of a fixed width on a child, pick Fill container (if the parent has auto layout) or Hug contents (if the layer has auto layout itself). Figma's help center doesn't list a keyboard shortcut for switching sizing modes, so use the dropdown.

06

Min and max width in Figma

Min and max limits live in the same dropdowns. Open Width and choose Add min width or Add max width; open Height for Add min height or Add max height. They work on auto layout frames and on their children. When a limit is set, the width or height icon shows two extra lines so you can spot it.

Limits are how you make Fill container behave in real layouts: a sidebar that fills but never drops below 240px, or a text column that stops growing past a readable width. A min width is also the fix when auto layout wrap isn't working, because a Fill child without one never wraps.

For the full auto layout setup, including gap and padding, read how to use auto layout in Figma. For overlapping children, see absolute position.

Ranked listThe best Figma plugins for renaming and cleaning up layers in 2026
FAQ

Frequently asked questions

Why is Fill container greyed out in Figma?

The layer's parent isn't an auto layout frame, or the layer is a top-level frame on the canvas. Add auto layout to the parent with Shift+A and the option becomes available on its children.

Why is Hug contents not working in Figma?

Hug only works on frames that have auto layout. It also can't work when a child is set to Fill container, because each would be waiting for the other's size. Change that child to Fixed or Hug.

Is there a shortcut for Fill container in Figma?

Figma's help center doesn't document one. Set it in the Width or Height dropdown in the right sidebar.

Where is min and max width in Figma?

Open the Width dropdown on an auto layout frame or its child and choose Add min width or Add max width. Height has the matching min and max options.

Keep learning

More in Auto layout & frames

All guides in Auto layout & frames