diff --git a/app/src/menus/protyle.ts b/app/src/menus/protyle.ts index bcdcfbfcf..1e1d0744b 100644 --- a/app/src/menus/protyle.ts +++ b/app/src/menus/protyle.ts @@ -1180,7 +1180,7 @@ export const imgMenu = (protyle: IProtyle, range: Range, assetElement: HTMLEleme iconHTML: "", type: "readonly", label: `
-px +px
`, bind(element) { const inputElement = element.querySelector("input"); @@ -1188,11 +1188,11 @@ export const imgMenu = (protyle: IProtyle, range: Range, assetElement: HTMLEleme rangeElement.value = "0"; rangeElement.parentElement.setAttribute("aria-label", inputElement.value ? (inputElement.value + "px") : window.siyuan.languages.default); - imgElement.style.width = inputElement.value ? (inputElement.value + "px") : ""; + imgElement.parentElement.style.width = inputElement.value ? (inputElement.value + "px") : ""; imgElement.style.height = ""; }); inputElement.addEventListener("blur", () => { - if (inputElement.value === imgElement.style.width.replace("px", "")) { + if (inputElement.value === imgElement.parentElement.style.width.replace("px", "")) { return; } nodeElement.setAttribute("updated", dayjs().format("YYYYMMDDHHmmss")); @@ -1212,13 +1212,14 @@ export const imgMenu = (protyle: IProtyle, range: Range, assetElement: HTMLEleme }, { iconHTML: "", type: "readonly", - label: `
- + label: `
+
`, bind(element) { rangeElement = element.querySelector("input"); rangeElement.addEventListener("input", () => { - imgElement.style.width = rangeElement.value + "%"; + imgElement.parentElement.style.width = rangeElement.value + "%"; + imgElement.style.height = ""; rangeElement.parentElement.setAttribute("aria-label", `${rangeElement.value}%`); }); rangeElement.addEventListener("change", () => { @@ -1250,7 +1251,7 @@ export const imgMenu = (protyle: IProtyle, range: Range, assetElement: HTMLEleme rangeHeightElement.parentElement.setAttribute("aria-label", inputElement.value ? (inputElement.value + "px") : window.siyuan.languages.default); imgElement.style.height = inputElement.value ? (inputElement.value + "px") : ""; - imgElement.style.width = ""; + imgElement.parentElement.style.width = ""; }); inputElement.addEventListener("blur", () => { if (inputElement.value === imgElement.style.height.replace("px", "")) { @@ -1279,7 +1280,7 @@ export const imgMenu = (protyle: IProtyle, range: Range, assetElement: HTMLEleme bind(element) { rangeHeightElement = element.querySelector("input"); rangeHeightElement.addEventListener("input", () => { - imgElement.style.width = ""; + imgElement.parentElement.style.width = ""; imgElement.style.height = rangeHeightElement.value + "vh"; rangeHeightElement.parentElement.setAttribute("aria-label", `${rangeHeightElement.value}%`); }); @@ -1819,7 +1820,7 @@ const genImageWidthMenu = (label: string, imgElement: HTMLElement, protyle: IPro label, click() { nodeElement.setAttribute("updated", dayjs().format("YYYYMMDDHHmmss")); - imgElement.style.width = label === window.siyuan.languages.default ? "" : label; + imgElement.parentElement.style.width = label === window.siyuan.languages.default ? "" : label; imgElement.style.height = ""; updateTransaction(protyle, id, nodeElement.outerHTML, html); focusBlock(nodeElement); diff --git a/app/src/protyle/wysiwyg/index.ts b/app/src/protyle/wysiwyg/index.ts index 9a227b1ff..00d74360d 100644 --- a/app/src/protyle/wysiwyg/index.ts +++ b/app/src/protyle/wysiwyg/index.ts @@ -675,9 +675,9 @@ export class WYSIWYG { } if (moveEvent.clientX > x - dragWidth + 8 && moveEvent.clientX < mostRight) { if ((dragElement.tagName === "IMG" && !dragElement.parentElement.parentElement.style.minWidth && nodeElement.style.textAlign !== "center") || !isCenter) { - dragElement.style.width = Math.max(17, dragWidth + (moveEvent.clientX - x)) + "px"; + dragElement.parentElement.style.width = Math.max(17, dragWidth + (moveEvent.clientX - x)) + "px"; } else { - dragElement.style.width = Math.max(17, dragWidth + (moveEvent.clientX - x) * 2) + "px"; + dragElement.parentElement.style.width = Math.max(17, dragWidth + (moveEvent.clientX - x) * 2) + "px"; } } if (dragElement.tagName !== "IMG") {