diff --git a/src/runtime/components/prose/Img.vue b/src/runtime/components/prose/Img.vue index ebc704a844..1eac6694ec 100644 --- a/src/runtime/components/prose/Img.vue +++ b/src/runtime/components/prose/Img.vue @@ -39,6 +39,7 @@ const props = withDefaults(defineProps(), { const appConfig = useAppConfig() as ProseImg['AppConfig'] const [DefineImageTemplate, ReuseImageTemplate] = createReusableTemplate() +const [DefineZoomedImageTemplate, ReuseZoomedImageTemplate] = createReusableTemplate() const open = ref(false) @@ -78,10 +79,19 @@ if (props.zoom) { :class="ui.base({ class: [props.ui?.base, props.class] })" /> + + + - + @@ -91,8 +101,8 @@ if (props.zoom) {
- - + +
diff --git a/src/theme/prose/img.ts b/src/theme/prose/img.ts index 4f198866ce..4906053a4a 100644 --- a/src/theme/prose/img.ts +++ b/src/theme/prose/img.ts @@ -2,7 +2,8 @@ export default { slots: { base: 'rounded-md w-full', overlay: 'fixed inset-0 bg-default/75 backdrop-blur-sm will-change-opacity', - content: 'fixed inset-0 flex items-center justify-center cursor-zoom-out focus:outline-none p-4 sm:p-8' + content: 'fixed inset-0 flex items-center justify-center cursor-zoom-out focus:outline-none', + zoomedImage: 'w-full h-auto max-w-[95vw] max-h-[95vh] object-contain rounded-md' }, variants: { zoom: {