From d521ebde4fb0693ab74a6a7530cca8d15631a664 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Sun, 25 Sep 2022 19:16:43 +0800 Subject: [PATCH] :bug: fix https://github.com/siyuan-note/siyuan/issues/5956 --- app/src/protyle/toolbar/Font.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/protyle/toolbar/Font.ts b/app/src/protyle/toolbar/Font.ts index 218895e35..852911fd2 100644 --- a/app/src/protyle/toolbar/Font.ts +++ b/app/src/protyle/toolbar/Font.ts @@ -3,6 +3,7 @@ import {ToolbarItem} from "./ToolbarItem"; import {setPosition} from "../../util/setPosition"; import {getSelectionPosition} from "../util/selection"; import {Constants} from "../../constants"; +import {hasClosestByAttribute} from "../util/hasClosest"; export class Font extends ToolbarItem { public element: HTMLElement; @@ -70,8 +71,11 @@ export const fontMenu = (protyle: IProtyle) => { }); lastColorHTML += ""; } - const textElement = protyle.toolbar.range.cloneContents().querySelector('[data-type~="text"]') as HTMLElement; + let textElement = protyle.toolbar.range.cloneContents().querySelector('[data-type~="text"]') as HTMLElement; let fontSize = "16px"; + if (!textElement) { + textElement = hasClosestByAttribute(protyle.toolbar.range.startContainer, "data-type", "text") as HTMLElement; + } if (textElement) { fontSize = textElement.style.fontSize; }