Files
rui40000andClaude Opus 5 a513f5a66c 修正节点内视频预览被裁切:绕过 art-venture 的全局 CSS 误伤
现象:「加载透明视频」节点下方的预览按原始像素尺寸渲染,容器
overflow:hidden 把画面裁掉一大块,只能看到局部。

根因不在本节点。ComfyUI 官方给节点视频预览的样式本来是对的
(.comfy-img-preview video { object-fit:contain; width:100%; height:100% }),
但 comfyui-art-venture 的 web/upload.js 为自家 LoadVideoFromUrl 注入了一条
同名全局选择器的规则,把宽高改成 var(--comfy-img-preview-width/height)。
这两个变量只在 art-venture 自家节点的 DOM 上定义,其它节点取到空值,
变量为空时整条声明失效,<video> 退回固有尺寸撑破容器而被裁切。

修法(web/rui_video_preview_fit.js,随 WEB_DIRECTORY 加载):
- 本节点专属规则 .comfy-img-preview.rui-video-fit video 强制
  100% + object-fit:contain;容器标记通过拦截 node.videoContainer
  的赋值时打上,无需轮询、不受创建时机影响
- 全局兜底规则给那两个变量补 100% 回退值:变量有值时行为完全不变
  (art-venture 自身节点不受影响),仅在变量为空这种本就失效的
  情况下恢复官方行为,对其它插件是纯修复

浏览器内 A/B 实测(640x640 视频、347px 宽容器):
修复前 video 渲染 640x640 溢出被裁;两条规则各自生效后均为 347x347 完整显示。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-18 18:29:05 +08:00
..