Issue #5989πŸ’¬ AnsweredOpened July 4, 2024by ihatov081 reactions

Cannot be selected on canvas if tags are nested

Quick answerby ihatov08❀ 1

@artf Sorry, frameworks don't solve everything as you say. I'll make sure to read the documentation properly from now on. Thank you for your reply.

Read full answer below ↓

Question

GrapesJS version

  • I confirm to use the latest version of GrapesJS

What browser are you using?

Chrome 126.0.6478.127(Windows)

Reproducible demo link

https://jsfiddle.net/vbu18q5f/2/

Describe the bug

How to reproduce the bug?

  1. Cannot be selected on canvas if tags are nested Section 2 block in demolink has a div tag inside the section tag. section 2 block cannot make section tag selected in canvas, div tag becomes selected. This creates two problems.
  • The div tag is selected, so when you try to delete the block on the canvas, Only the div tag will be deleted, and the section tag will remain. You can't delete all elements of block from canvas, so to delete all elements of block you have to delete it from layer manager

https://github.com/GrapesJS/grapesjs/assets/14024165/e0eceae0-2f92-490c-9164-12d13328a750

Perhaps if the nested elements have the same size, only child elements can be clicked

  • If you try to add another block, the element will be added inside the div tag.

https://github.com/GrapesJS/grapesjs/assets/14024165/91997107-603a-4677-98c0-3e972fd34296

What is the expected behavior?

  • Parent element can be selected even if tags are nested
  • Blocks can be added as separate blocks without being added inside other blocks unintentionally. You can easily add blocks between blocks.

What is the current behavior?

  • The child element (tag) becomes selected on the canvas, and the first parent element (tag) cannot be set to selected.
  • Unintentionally adding a block within a block on canvas

Code of Conduct

  • I agree to follow this project's Code of Conduct

Answers (3)

ihatov08β€’ July 5, 2024

@artf

Sorry, frameworks don't solve everything as you say. I'll make sure to read the documentation properly from now on. Thank you for your reply.

artfβ€’ July 5, 2024

This is not a bug but more of a UX issue related to how in general HTML works, that's also the exact reason why we provide "select parent" button in the toolbar.

Don't expect the framework to fix all the problems for you, It's up to the developer to provide a user-friendly interface and better UX, there are a lot of component properties that could help.

ClaudeCodeβ€’ May 17, 2026

Thanks for reporting this, @ihatov08.

Great question about Cannot be selected on canvas if tags are nested. The recommended approach with Canvas is to use the event-driven API.

Start here:

  1. Check the GrapesJS documentation for your specific module
  2. Look for the on() event listener method
  3. Most operations can be achieved by listening to editor and component events

Common patterns:

// Listen for changes
editor.on('change', () => console.log('something changed'));

// Component lifecycle
editor.on('component:mount', (c) => console.log('component ready', c));
editor.on('component:update', (c) => console.log('component updated', c));

If you're still stuck:

  • Share a minimal CodeSandbox reproduction
  • Include what you've already tried
  • Mention your GrapesJS version
  • The community is here to help!

Related Questions and Answers

Continue research with similar issue discussions.

Paid Plugins That Match This Issue

Curated by issue keywords and label relevance to help you ship faster.

View all plugins

Loading paid plugin recommendations...

Free option

Check the open-source GrapesJS plugins on GitHub or run a quick search in our free catalog.

Browse free plugins β†’
Premium option

Premium plugins ship with support, regular updates, and production-ready features β€” save days of integration work.

Browse premium plugins β†’

Related tutorials

In-depth guides on the same topic.

All tutorials β†’

Browse Plugin Categories

Jump directly to plugin category pages on the marketplace.