'Snap to pixel grid' not working as intended?

Hi! When I want to snap to the grid inside a frame it seems doesn’t work at all. But when I move it outside of the frame it is working great. What’s the reason? Thanks :grinning:

Youtube video example

1 Like

Yeah - similar situation here, and same no answer from support or community so far.

Hey All,

Sorry to hear you haven’t received help with this yet!

Even with ‘Snap to Pixel’ enabled, through regular use of Figma, it’s pretty hard to 100% avoid creating elements with sub pixel values, as there are a number of tools (scaling, import, strokes, auto layout, etc.) that generate sub-pixel values through normal use.

To avoid these as much as possible, here’s the workflow we suggest:

  • Always keep ‘Snap to pixel grid’ enabled
  • Use ‘Round to pixel’ (under Arrange, or from the Quick actions menu) on a selection to tidy up values where this is possible without skewing them
  • Avoid using the Scale tool, which will snap the top level frame to the pixel grid but leave any elements inside off grid
  • When applying strokes, try to keep the end pixel value in mind, i.e. adding a 1.5 pixel stroke to an element with an uneven dimension value will always be off grid in one direction
  • Manually adjust pixel values on shapes that were created ‘programmatically’ (for example using outline stroke) which the system can’t always mathematically calculate and then round up or down to the grid

If anything you’re seeing seems unexpected, based on this information, please take a screen recording, add support-share@figma.com to your file as an Editor (this won’t affect your billing at all) and reach out to the support team directly via this form for help: https://help.figma.com/hc/en-us/requests/new

1 Like

The stated solution did not help in my case. Every project like this is not snapping - it does not matter if it is figma web or desktop app, it does not work.

1 Like

Here’s the real solution to OP’s problem:
It has nothing to do with “Snap to pixel grid” at all.

The parent frame of the content you want to snap requires an applied Layout Grid.
@Eugene_Khristo shows in the video that he wants to snap the “Rectangle 3” layer, which is nested inside the “footer” frame. The frame needs the 12 column Layout Grid as well, I’m guessing only the top level parent frame “Desktop - 1” has a Layout Grid applied to it.

Layers always need a parent frame with an active Layout Grid to be able to snap to the Grid (columns, rows, etc.).

2 Likes

Sorry to hear that!

Please take a screen recording, add support-share@figma.com to your file as an Editor and reach out to the support team directly via this form for help: https://help.figma.com/hc/en-us/requests/new

Hi,

i use the desktop app with macOS and have enabled the snap to pixel Grid option under the preferences. Then i created a layout grid with 12 columns. All the objects do not snapping to my underlaying layout grid. What i’m doing wrong?

Hi,

it is working if the object is a child of the parent frame. I wanted to lock the frame with the grid layout but then i can’t use the objects within the frame