diff --git a/app/src/assets/scss/business/_av.scss b/app/src/assets/scss/business/_av.scss index 2ab5b4e2e..13fc4abb0 100644 --- a/app/src/assets/scss/business/_av.scss +++ b/app/src/assets/scss/business/_av.scss @@ -375,7 +375,7 @@ } img.av__cellassetimg { - max-height: 24px; + max-height: 18px; border-radius: var(--b3-border-radius); margin: 1px 2px; max-width: none; diff --git a/app/src/protyle/gutter/index.ts b/app/src/protyle/gutter/index.ts index d1c6aef9b..f11634e46 100644 --- a/app/src/protyle/gutter/index.ts +++ b/app/src/protyle/gutter/index.ts @@ -710,7 +710,12 @@ export class Gutter { if (!isMobile()) { appearanceElement.lastElementChild.classList.add("b3-menu__submenu--row"); } - this.genAlign(selectsElement, protyle); + selectsElement.find((item) => { + if (!item.classList.contains("NodeAttributeView")) { + this.genAlign(selectsElement, protyle); + return true; + } + }); this.genWidths(selectsElement, protyle); window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({ @@ -1510,7 +1515,9 @@ export class Gutter { if (!isMobile()) { appearanceElement.lastElementChild.classList.add("b3-menu__submenu--row"); } - this.genAlign([nodeElement], protyle); + if (type !== "NodeAttributeView") { + this.genAlign([nodeElement], protyle); + } this.genWidths([nodeElement], protyle); } window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); @@ -1614,7 +1621,9 @@ export class Gutter { accelerator: window.siyuan.config.keymap.editor.general.alignLeft.custom, click: () => { this.genClick(nodeElements, protyle, (e: HTMLElement) => { - e.style.textAlign = "left"; + if (!e.classList.contains("NodeAttributeView")) { + e.style.textAlign = "left"; + } }); } }, { @@ -1623,7 +1632,9 @@ export class Gutter { accelerator: window.siyuan.config.keymap.editor.general.alignCenter.custom, click: () => { this.genClick(nodeElements, protyle, (e: HTMLElement) => { - e.style.textAlign = "center"; + if (!e.classList.contains("NodeAttributeView")) { + e.style.textAlign = "center"; + } }); } }, { @@ -1632,7 +1643,9 @@ export class Gutter { accelerator: window.siyuan.config.keymap.editor.general.alignRight.custom, click: () => { this.genClick(nodeElements, protyle, (e: HTMLElement) => { - e.style.textAlign = "right"; + if (!e.classList.contains("NodeAttributeView")) { + e.style.textAlign = "right"; + } }); } }, { @@ -1640,7 +1653,9 @@ export class Gutter { icon: "iconMenu", click: () => { this.genClick(nodeElements, protyle, (e: HTMLElement) => { - e.style.textAlign = "justify"; + if (!e.classList.contains("NodeAttributeView")) { + e.style.textAlign = "justify"; + } }); } }, { @@ -1650,7 +1665,9 @@ export class Gutter { icon: "iconLtr", click: () => { this.genClick(nodeElements, protyle, (e: HTMLElement) => { - e.style.direction = "ltr"; + if (!e.classList.contains("NodeAttributeView")) { + e.style.direction = "ltr"; + } }); } }, { @@ -1658,7 +1675,9 @@ export class Gutter { icon: "iconRtl", click: () => { this.genClick(nodeElements, protyle, (e: HTMLElement) => { - e.style.direction = "rtl"; + if (!e.classList.contains("NodeAttributeView")) { + e.style.direction = "rtl"; + } }); } }, { diff --git a/app/src/protyle/render/av/render.ts b/app/src/protyle/render/av/render.ts index 7f56efbde..6b1cefa03 100644 --- a/app/src/protyle/render/av/render.ts +++ b/app/src/protyle/render/av/render.ts @@ -29,7 +29,7 @@ export const avRender = (element: Element, protyle: IProtyle, cb?: () => void) = let html = ""; [1, 2, 3].forEach(() => { html += `
-
+
@@ -169,8 +169,9 @@ ${cell.color ? `color:${cell.color};` : ""}">${text}
`; ${item.name} `; }); - const paddingLeft = e.parentElement.style.paddingLeft; - const paddingRight = e.parentElement.style.paddingRight; + const setWidth = e.style.width.endsWith("%"); + const paddingLeft = setWidth ? "" : e.parentElement.style.paddingLeft; + const paddingRight = setWidth ? "" : e.parentElement.style.paddingRight; setTimeout(() => { e.firstElementChild.outerHTML = `
@@ -205,9 +206,14 @@ ${cell.color ? `color:${cell.color};` : ""}">${text}
`;
`; if (e.parentElement.clientWidth > 0) { - e.style.width = e.parentElement.clientWidth + "px"; + e.style.maxWidth = e.parentElement.clientWidth + "px"; + } + if (setWidth) { + e.style.alignSelf = ""; + } else { + e.style.width = ""; + e.style.alignSelf = "center"; } - e.style.alignSelf = "center"; e.setAttribute("data-render", "true"); if (left) { e.querySelector(".av__scroll").scrollLeft = left; diff --git a/app/src/protyle/util/resize.ts b/app/src/protyle/util/resize.ts index 3cf7ab5bb..4b045a161 100644 --- a/app/src/protyle/util/resize.ts +++ b/app/src/protyle/util/resize.ts @@ -44,8 +44,8 @@ export const resize = (protyle: IProtyle) => { } if (abs.padding > MIN_ABS || abs.width > MIN_ABS || isNaN(abs.padding)) { protyle.wysiwyg.element.querySelectorAll(".av").forEach((item: HTMLElement) => { - item.style.width = item.parentElement.clientWidth + "px"; - if (item.getAttribute("data-render") === "true") { + item.style.maxWidth = item.parentElement.clientWidth + "px"; + if (item.getAttribute("data-render") === "true" && !item.style.width.endsWith("%")) { const paddingLeft = item.parentElement.style.paddingLeft; const paddingRight = item.parentElement.style.paddingRight; const avHeaderElement = item.firstElementChild.firstElementChild as HTMLElement;