diff --git a/app/src/protyle/util/insertHTML.ts b/app/src/protyle/util/insertHTML.ts
index 2c702542e..00b5d7e51 100644
--- a/app/src/protyle/util/insertHTML.ts
+++ b/app/src/protyle/util/insertHTML.ts
@@ -382,12 +382,14 @@ export const insertHTML = (html: string, protyle: IProtyle, isBlock = false,
isBlock = false;
block2text = true;
}
- // 通过右键粘贴包含属性的块需保留整个块 https://github.com/siyuan-note/siyuan/issues/15268
- for (let i = 0; i < tempElement.content.firstElementChild.attributes.length; i++) {
- const attribute = tempElement.content.firstElementChild.attributes[i];
- if (["memo", "name", "alias", "bookmark"].includes(attribute.name) || attribute.name.startsWith("custom-")) {
- isBlock = true;
- break;
+ if (!isBlock && tempElement && tempElement.content.childElementCount === 1) {
+ // 通过右键粘贴包含属性的块需保留整个块 https://github.com/siyuan-note/siyuan/issues/15268
+ for (let i = 0; i < tempElement.content.firstElementChild.attributes.length; i++) {
+ const attribute = tempElement.content.firstElementChild.attributes[i];
+ if (["memo", "name", "alias", "bookmark"].includes(attribute.name) || attribute.name.startsWith("custom-")) {
+ isBlock = true;
+ break;
+ }
}
}
// 使用 lute 方法会添加 p 元素,只有一个 p 元素或者只有一个字符串或者为 b 时的时候只拷贝内部