GrapesJS Issues

3,464 parsed GitHub issues — 370 solved · 90 open. Search, filter and explore battle-tested answers.

3,464 issues found

#6685January 12, 2026by shery4 answers
0 reactions

Custom component styles are not applied after deletion and re-addition

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v143.0.7499.193 Reproducible demo link https://codesandbox.io/p/sandbox/2l3887 Describe the bug How to reproduce the bug? Open the page and load the GrapesJS editor Select the Row component and delete it Click the R...

mdmontesinos

I'm facing a similar issue, where the re-added component has the correct styles property: <img width="1112" height="17" alt="Image" src="https://github.com/user-attachments/assets/474011c4-b1be-48df-9aa8-14c3dcdfc68d" /> But if I use the "...

artf

@mdmontesinos your usage is not correct, styles has to be defined at the component definition, and it's not expected to change. Also, it's wrong to use IDs for component definition if the component is expected to be reused, the ID will be...

mdmontesinos

@artf I'm using an ID because there will always be a single instance of that component in my project. My use case is that a component is designed externally to be used as a "background" and then imported into projects that use it. Therefor...

#6683January 7, 2026by derikb3 answers
0 reactions

Modals close on mouseup event outside of modal rather than a full click

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 143.0.7499.169 Reproducible demo link https://grapesjs.com/demo.html Describe the bug How to reproduce the bug? Drag a custom code component into the page. The modal should open automatically, else double click the...

derikb

fwiw I used the demo page as the reproducible link, though that page is not using the most recent version of grapesjs. My local code is using the recent version and shows the same issue.

derikb

Ok I see why its happening. Because the modal and its surrounding backdrop are all one element that has the events attached, so a mousedown, drag, mouseup is still getting treated as a click cause its all over the same element. Event.targe...

GJS Helper

The issue you've described is a known edge case in how browser click events interact with mousedown and mouseup events, especially when dealing with overlays or backdrops for modals. While GrapesJS's modal closing logic is tied to a click...

#6679December 17, 2025by subpublic1 answer
0 reactions

Border Radius Bottom Left & Right is switched in Style Manager

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v143 Reproducible demo link https://jsfiddle.net/szLp8h4n Describe the bug How to reproduce the bug? Set background color Set border radius bottom left, to eg 20px. What is the expected behavior? The bottom left cor...

GJS Helper

Thank you for reporting this issue. I can confirm the bug where the 'Border Radius Bottom Left' and 'Border Radius Bottom Right' controls in the GrapesJS Style Manager are indeed swapped, leading to the incorrect corner being rounded. This...

#6678December 17, 2025by J-Wick41 answer
0 reactions

YouTube now requires referrerpolicy="strict-origin-when-cross-origin" attribute on embedded video iframes for proper playback.

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Brave Reproducible demo link na Describe the bug How to reproduce the bug? Try adding a YouTube video to a landing page and find out. What is the expected behavior? YouTube video renders and is playable What is the current...

GJS Helper

This is indeed a valid bug report. YouTube has updated its embedding requirements, and without the referrerpolicy="strict-origin-when-cross-origin" attribute on the iframe, videos may fail to play, displaying an error or requiring users to...

#6675December 15, 2025by lexoyo1 answer
0 reactions

Symbols and IDs

@artf The elements with an ID in the symbols have different ID in the different instances of the symbol. It makes sense because it's bad to have multiple elements with the same ID in an HTML document Issue 1 Users who have a symbol on different pages are confused because the styles they "add" to an element ID is "lost...

GJS Helper

You've accurately identified a fundamental design decision in GrapesJS regarding how IDs are handled within symbol instances. This behavior, while crucial for maintaining valid HTML, indeed presents challenges for specific use cases like s...

#6674December 14, 2025by OfirD12 answers
0 reactions

Anchor links with hash navigation don't work in preview mode

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 143.0.7499.41 Reproducible demo link https://jsfiddle.net/mghzw41k/2/ Describe the bug On preview mode, anchor links with hash navigation (e.g., href="#section") don't work. The default browser navigation behavior i...

doudou673

I encountered the same problem.

GJS Helper

The issue you're experiencing with anchor links (hash navigation) not working in GrapesJS preview mode is a common behavior stemming from how GrapesJS handles interactions within its canvas. In editing mode, GrapesJS intercepts click event...

#6671December 9, 2025by padcom2 answers
1 reactions

`component.closestType()` is undefined

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? any Reproducible demo link https://github.com/padcom/grapesjs-closestType-missing Describe the bug This bug was introduced in here. Before this change everything was working as expected. I presume the reset event is respon...

padcom

It turns out the second parameter is not always the component but the sender of the event which means that sometimes it is the collection of components which obviously doesn't have the closestType() method. Thanks @artf for explaining it t...

GJS Helper

It appears there might be a slight misunderstanding regarding the usage of component.closestType(). After reviewing your provided reproduction steps and code, component.closestType is indeed a function on the component object passed to the...

#6669December 5, 2025by pierodetomi3 answers
0 reactions

Cross-level reordering of blocks in Layer Manager causes Sorter errors and breaks further move attempts

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome Reproducible demo link https://grapesjs.com/demo.html Describe the bug How to reproduce the bug? Start from a fresh editor instance with an empty canvas From the Blocks panel, drag a "1 Column" block into the canvas...

lexoyo

I guess it is the same as this bug too?

pierodetomi

I don’t think it’s the same issue. In the one you linked, items are disappearing, while in my case the Layer Manager ends up in a state where you can’t move a layer anymore. They might be related at a higher level as “Sorter-related proble...

GJS Helper

This is a known issue in GrapesJS related to how the internal Sorter instances (used for drag-and-drop in both the Layer Manager and the Canvas) maintain their state after complex, cross-level component reordering operations. The errors yo...

#6668December 4, 2025by msftedad2 answers
0 reactions

Accessible name is not defined for iframe in windows.

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Edge (Version 143.0.3650.46), Chrome (Version 143.0.7499.41) Reproducible demo link https://grapesjs.com/demo Describe the bug Test Environment: OS: Windows 11 version 25H2 (OS Build 26220.7271) Browser: Edge (Version 143....

msftedad

Hi Team, Any update on this issue?

GJS Helper

This is a valid accessibility concern. The GrapesJS editor's canvas is rendered within an <iframe> element. For screen readers to properly identify and announce the purpose of this iframe, it needs an accessible name, typically provided by...

#6666November 28, 2025by lexoyo2 answers
2 reactions

Layer panel: drag and drop makes items disappear (firefox and chrome)

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Firefox 137.0 and Chrome 136.0.7103.92 Reproducible demo link https://grapesjs.com/demo.html Describe the bug How to reproduce the bug? Open the official demo https://grapesjs.com/demo.html To reproduce the exact same stru...

pierodetomi

I can confirm I’m seeing the same issue, and it’s caused by the disappearing element having a computed height of 0px (because it’s using display: none). While this is definitely a bug, as a temporary workaround you can avoid using display:...

GJS Helper

This is indeed a bug within the GrapesJS Layers panel's drag-and-drop functionality, specifically when attempting to move components that are semantically linked, such as an input element with an id and a label element with a for attribute...