Contenteditable:防止内部元素被删除

ste*_*Kim 6 javascript jquery contenteditable

我有一个简单的 contenteditable 标记:

<div class="example" contenteditable="true">
     <div class="inside">Some content</div>
</div>
Run Code Online (Sandbox Code Playgroud)

当我删除“ Some content”时,class="inside"div 也会被删除。有没有办法防止删除内容时删除内部div?

例如,这是我在删除内容后尝试制作的外观。

<div class="example" contenteditable="true">
     <div class="inside"></div> <!-- The div is not deleted -->
</div>
Run Code Online (Sandbox Code Playgroud)

我环顾四周,但似乎没有明确的答案。

任何帮助都感激不尽。

谢谢你。

dev*_*una -3

.inside, .example {
  display: inline;
}
Run Code Online (Sandbox Code Playgroud)
<div class="example" contenteditable="true">
  <div class="inside">Some content</div>
</div>
Run Code Online (Sandbox Code Playgroud)

也许有一种样式是内联级元素。

因为当你删除内容时宽度将为 0%。您无法再次单击它或添加任何内容。

所以,我的解决方案是

.inside, .example {
  display: block;
}
Run Code Online (Sandbox Code Playgroud)

如果需要,您可以指定宽度。:)

.inside, .example {
  display: block;
}
Run Code Online (Sandbox Code Playgroud)
.inside, .example {
  display: block;
}
Run Code Online (Sandbox Code Playgroud)

  • 如果您检查该元素(在 Chrome 中),内部 div 在这两种情况下都会被删除。 (3认同)