fix(viewer): 桌面 110% 缩放下看图控件整体右偏 + 遮罩盖不满屏幕
真因(真 Chromium 实测,1280×577 / html{zoom:1.1}):
- 布局空间只有屏幕的 1/1.1(1280 屏 → 布局 1164)。Viewer 按「视觉屏幕宽 1280」算居中,
算出的 margin-left 被当【布局值】写进内联样式 ⇒ 渲染时又 ×1.1 ⇒ 图片整体右偏
(1280 − 1280/1.1)/2 ≈ 58 布局 px(渲染 64px)。实测左右留白 360.1 / 232.1(差 +128)。
- 看图外壳(.viewer-container,fixed + inset:0)在 zoom 下只铺到屏幕的 90.9%
(1163.6×524.5),右侧/底部约 116×52px 的遮罩盖不住。
修法:
- blade:点开图后约 4s 内持续按【布局单位】重算大图 margin(幂等;z=1 的手机端直接跳过;
带「整图适配」护栏,不干扰用户自己的放大/平移)。不用 Viewer 的事件 API —— 内置的
viewer.min.js 是压缩产物、实例上没有可用的 .on()(用了会让整段脚本报错)。
- common.less:外壳改 width/height:100%(实测渲染出来正好铺满屏幕;不能用 100vw,
zoom 下它会渲染成 1408 即溢出 10%)。
真机验收(生产库只读副本 + 一次性容器 + Chromium):
- 左右留白 296.4 / 295.8(差 +0.6)✓ 上下 51.5 / 51.3(差 +0.2)✓
- 容器与遮罩 = 1280×577 = 正好一屏 ✓
- 手机档 390 宽:z=1,代码自动跳过,左右 19.5/19.5(差 0.0,与原样一致)✓
- jsdom 9 套件 409 项全绿 ✓ 无 JS 报错 ✓
This commit is contained in:
1 parent
6e317b106a
commit
197a5f0cd6
2 files changed
+3
-3
No files matched your search
+2
-2
@@ -165,7 +165,7 @@ RUN php -r "file_exists('.env') || copy('.env.example', '.env');" \
|
||||
RUN printf '%s\n' \
|
||||
'c0e513ec8e93fd81b34b3c6de5cf5eb8 ./public/js/context-js/context-js.js' \
|
||||
'c0e513ec8e93fd81b34b3c6de5cf5eb8 ./resources/js/context-js.js' \
|
||||
'23835058801c2b609c2134f0f10d0a5d ./resources/views/user/images.blade.php' \
|
||||
'df7fe2e34526513b55bb9286b59254be ./resources/views/user/images.blade.php' \
|
||||
| md5sum -c - \
|
||||
&& grep -q "assetVersion('js/context-js/context-js.js')" ./resources/views/user/images.blade.php \
|
||||
&& grep -q 'isIOSWebKit' ./public/js/context-js/context-js.js \
|
||||
@@ -208,7 +208,7 @@ RUN APP_SRC_MD5=$(find app config routes -type f -print0 2>/dev/null | sort -z |
|
||||
"fork_sha=${FORK_SHA}" \
|
||||
"lsky_commit=${LSKY_COMMIT}" \
|
||||
"context_js_md5=c0e513ec8e93fd81b34b3c6de5cf5eb8" \
|
||||
"images_blade_md5=23835058801c2b609c2134f0f10d0a5d" \
|
||||
"images_blade_md5=df7fe2e34526513b55bb9286b59254be" \
|
||||
"app_src_md5=${APP_SRC_MD5}" \
|
||||
"app_js_md5=${APP_JS_MD5}" \
|
||||
"app_css_md5=${APP_CSS_MD5}" \
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
# 三个文件各自的 md5(与 Dockerfile「自证 2」里的期望值一致):
|
||||
# c0e513ec8e93fd81b34b3c6de5cf5eb8 src/resources/js/context-js.js
|
||||
# c0e513ec8e93fd81b34b3c6de5cf5eb8 src/public/js/context-js/context-js.js
|
||||
# 23835058801c2b609c2134f0f10d0a5d src/resources/views/user/images.blade.php
|
||||
# df7fe2e34526513b55bb9286b59254be src/resources/views/user/images.blade.php
|
||||
#
|
||||
# 上游原文件 md5(改动前,供比对):
|
||||
# c8e57f6232848ca8277341ddf1a3a7a6 resources/js/context-js.js
|
||||
|
||||
Reference in new issue
Block a user