GrapesJS Issues

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

336 issues found

🔍 style-manager
#6646Nov 11, 2025by soul-media3 answers
0 reactions

Javascript error when I want to add padding

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome & Firefox Reproducible demo link Describe the bug How to reproduce the bug? Chrome & Firefox: Add padding to a image / Text Sometimes the error occurs, sometimes it doesn't. https://github.com/user-attachments/asset...

trebor94

I've been running into the same issue and also using the grapesjs-mjml plugin. Apparently it only occurs when a project is loaded which has the style property present on the attributes of a component when the project is loaded. After each...

trebor94

Unfortunately haven't been able to figure out where or when exactly the style property gets added to the component style when exporting project data from a previously loaded project. Maybe someone else can pinpoint what causes the issue. @...

GJS Helper

It appears you've encountered a bug in GrapesJS, specifically when working with MJML components and applying styles like padding, which leads to invalid attributes being generated and stored. This issue seems to be a regression, as it work...

#6629Oct 14, 2025by paolotozzo1 answer
0 reactions

Default component styles incorrectly applied to device-specific media queries in v0.22.10+

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? chrome latest version Reproducible demo link https://app.grapesjs.com/studio Describe the bug How to reproduce the bug? Initialize GrapesJS editor with default device configuration Switch to tablet or mobile device view Ad...

GJS Helper

The issue you've described is a known behavioral change introduced in GrapesJS v0.22.10+, where default component styles are incorrectly applied to device-specific media queries when a component is added while a non-desktop device view is...

#6623Oct 10, 2025by zhengtulymGh1 answer
0 reactions

Custom Dynamic List freezes after binding array and expanding rows to match length

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? 140.0.7339.214(正式版本) (x8664) Reproducible demo link https://codesandbox.io/p/devbox/d27l6n Describe the bug I want to create a custom dynamic list component based on GrapesJS (with 3 rows by default). It can bind to an arr...

GJS Helper

The freezing issue you're encountering with your custom Dynamic List component in GrapesJS is a classic example of an event feedback loop. It occurs because the event listener responsible for updating the row count is too broad, causing it...

#6570Jul 20, 2025by nanto1 answer
0 reactions

Parser ignores `parser.optionsHtml.keepEmptyTextNodes` option

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrom v140.0.7307.0 (canary) Reproducible demo link https://jsfiddle.net/y3gr69s4/ Describe the bug How to reproduce the bug? Create editor instance with parser.optionsHtml.keepEmptyTextNodes option set true. Load HTML cod...

GJS Helper

You've accurately identified a discrepancy in how the keepEmptyTextNodes option is handled in GrapesJS, leading to newlines being stripped from your HTML output. This is indeed a bug related to the parser's configuration and its TypeScript...

#6549Jun 25, 2025by yashvi20264 answers
1 reactions

Couldnt Resize image

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome Reproducible demo link https://codepen.io/Harshsne/pen/YPXdgmj Describe the bug How to reproduce the bug? upload an image change it to mobile view resize the image What is the expected behavior? When manually changi...

mosh-tudor

@yashvi2026 That's because of your custom CSS code. Remove this part: from editor.BlockManager.add('image', {

artf

I confirm the component resizer doesn't account for !important right now, but I'd follow, more or less, what @mosh-tudor suggested. You don't need to remove the entire styles, as my guess is what you need, but I don't see the point of havi...

yashvi2026

I need to use !important in my style. I've noticed that in other components, when !important is included in the default styles, the styles added through the style manager also include !important to ensure they override the default. So, whe...

#6543Jun 15, 2025by Zedonboy1 answer
0 reactions

Panel not removed

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? chrome Reproducible demo link none Describe the bug How to reproduce the bug? From the tutorial My CSS style What is the expected behavior? A blank canvas What is the current behavior? ... If is necessary to execute some c...

GJS Helper

The issue you're encountering, where the "Blocks" panel is still visible despite setting panels: { defaults: [] }, is a common point of confusion. The panels: { defaults: [] } configuration option is indeed designed to prevent GrapesJS fro...

#6527May 22, 2025by tim-prom2 answers
1 reactions

Malformed inline styles causing editor freeze

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Firefox 138.0.4 Reproducible demo link https://codesandbox.io/p/sandbox/exciting-lalande-98d5vw Describe the bug How to reproduce the bug? Add page with component that has malformed inline styles Editor does not load and e...

artf

Thanks for the report @tim-prom

GJS Helper

The issue you've encountered, where GrapesJS freezes due to malformed inline styles, is a critical bug stemming from how the editor's internal CSS parser handles invalid syntax, specifically unclosed comments. Root Cause The problem lies i...

#6515May 13, 2025by jsxOverdose2 answers
0 reactions

Resizing an element affects all elements with the same class

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 136.0.7103.93 Reproducible demo link https://jsfiddle.net/L4pu0tzc/ Describe the bug How to reproduce the bug? Add multiple image elements to the editor. Assign the same class name (e.g., class="shared-class") to ea...

artf

Ensure to have this option enabled: https://grapesjs.com/docs/modules/Selectors.html#component-first-selectors

GJS Helper

The issue you're experiencing where resizing one element with a shared class affects all elements with that same class is a known behavior in GrapesJS, stemming from how it manages and applies CSS styles. By default, GrapesJS often tries t...

#6502Apr 25, 2025by jsxOverdose2 answers
0 reactions

Inline style overrides ID-based CSS rules

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v135.0.7049.96 Reproducible demo link https://jsfiddle.net/bqkLwt8j/ Describe the bug When an element has an inline style and also matches an ID-based CSS rule, the styles from the ID selector are removed - even if...

artf

Thanks for the report @jsxOverdose Will be fixed in the next release

GJS Helper

You've accurately identified a specific behavior in GrapesJS where inline styles appear to completely override ID-based CSS rules, even for non-conflicting properties. This is indeed a deviation from standard CSS specificity rules and can...

#6494Apr 15, 2025by yashvi20261 answer
0 reactions

Create and destroy repeatedly throws error

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome Reproducible demo link https://codepen.io/Harshsne/pen/QwwLjBQ Describe the bug How to reproduce the bug? Click Create and then Destroy repeatedly and rapidly. Upon debugging, I found that the error occurs due to th...

GJS Helper

The issue you're encountering with GrapesJS, where repeated rapid creation and destruction of the editor leads to errors like undefined 'allcomponents' and undefined 'lastcomponent', is a classic example of a race condition and state incon...

Browse all topics