Set horizontal margin for even better consistency

This commit is contained in:
tess 2024-11-12 22:09:37 +01:00
parent 6d6b03dfe2
commit 68e5b5a84a
2 changed files with 8 additions and 8 deletions

View File

@ -119,7 +119,7 @@ onMounted(() => {
} }
const rect = props.source.getBoundingClientRect(); const rect = props.source.getBoundingClientRect();
const x = Math.max(2, ((rect.left + (props.source.offsetWidth / 2)) - (300 / 2)) + window.scrollX); const x = Math.max(1, ((rect.left + (props.source.offsetWidth / 2)) - (300 / 2)) + window.scrollX);
const y = rect.top + props.source.offsetHeight + window.scrollY; const y = rect.top + props.source.offsetHeight + window.scrollY;
top.value = y; top.value = y;

View File

@ -15,7 +15,7 @@ export function calcPopupPosition(el: HTMLElement, props: {
const contentWidth = el.offsetWidth; const contentWidth = el.offsetWidth;
const contentHeight = el.offsetHeight; const contentHeight = el.offsetHeight;
const LEFT_MARGIN = 2; const HORIZONTAL_MARGIN = 1;
let rect: DOMRect; let rect: DOMRect;
@ -38,10 +38,10 @@ export function calcPopupPosition(el: HTMLElement, props: {
left -= (el.offsetWidth / 2); left -= (el.offsetWidth / 2);
if (left + contentWidth - window.scrollX > window.innerWidth) { if (left + contentWidth - window.scrollX > window.innerWidth) {
left = window.innerWidth - contentWidth + window.scrollX - 1; left = window.innerWidth - contentWidth + window.scrollX - HORIZONTAL_MARGIN;
} }
left = Math.max(LEFT_MARGIN, left); left = Math.max(HORIZONTAL_MARGIN, left);
return [left, top]; return [left, top];
}; };
@ -61,10 +61,10 @@ export function calcPopupPosition(el: HTMLElement, props: {
left -= (el.offsetWidth / 2); left -= (el.offsetWidth / 2);
if (left + contentWidth - window.scrollX > window.innerWidth) { if (left + contentWidth - window.scrollX > window.innerWidth) {
left = window.innerWidth - contentWidth + window.scrollX - 1; left = window.innerWidth - contentWidth + window.scrollX - HORIZONTAL_MARGIN;
} }
left = Math.max(LEFT_MARGIN, left); left = Math.max(HORIZONTAL_MARGIN, left);
return [left, top]; return [left, top];
}; };
@ -81,7 +81,7 @@ export function calcPopupPosition(el: HTMLElement, props: {
top = props.y; top = props.y;
} }
left = Math.max(LEFT_MARGIN, left); left = Math.max(HORIZONTAL_MARGIN, left);
top -= (el.offsetHeight / 2); top -= (el.offsetHeight / 2);
@ -114,7 +114,7 @@ export function calcPopupPosition(el: HTMLElement, props: {
top -= (el.offsetHeight / 2); top -= (el.offsetHeight / 2);
} }
left = Math.max(LEFT_MARGIN, left); left = Math.max(HORIZONTAL_MARGIN, left);
if (top + contentHeight - window.scrollY > window.innerHeight) { if (top + contentHeight - window.scrollY > window.innerHeight) {
top = window.innerHeight - contentHeight + window.scrollY - 1; top = window.innerHeight - contentHeight + window.scrollY - 1;