孩子要被逼疯啦!为什么transform无效啊
jquery吧
全部回复
仅看楼主
level 1
它是绑定在一个点击事件上的,可是只有left生效,scale死活都不生效[泪]
2024年03月08日 13点03分 1
level 4
去掉字符引号,scale(2)
2024年05月04日 12点05分 2
level 1
不支持transform
2024年05月24日 08点05分 3
level 4
这个问题通常是 CSS 变换(transform)的优先级 / 作用方式 或者 元素的 CSS 基础设置 导致的,我帮你梳理下常见原因和解决办法 28yt.com/xm/69118.html:
1. 先确认:transform 是否被其他样式覆盖
检查 .stage 元素的 CSS 中,是否已经有 transform 样式(比如 transform: translate(...))。因为 animate() 里的 transform 会覆盖原有 transform,但如果原有样式带 !important,则会失效。
解决:确保 .stage 没有自带 transform 或 !important。
2. 关键:jQuery 的 animate() 对 transform 的支持问题jQuery 原生的 animate() 默认不支持 transform 属性(只能识别宽高、位置等基础属性)。你现在能写 transform: 'scale(2)' 可能是 28yt.com/zhishi/69126.html:
要么是自己加了插件(比如 jquery.transform.js),但插件没正确引入;
要么是代码写错了(原生 jQuery 不认识 transform)。
3. 正确实现方式 28yt.com/case/69125.html
// 点击事件里:
$('.stage').addClass('scale-and-move');
.stage { transition: all 2000ms linear; /* 过渡动画 */ position: relative; /* left生效需要定位 */}
.scale-and-move { transform: scale(2); left: 200px;}
4. 额外注意:元素需要定位left 生效说明元素已经是 position: relative/absolute/fixed 了,这部分没问题,但 transform 不需要定位,只要元素是块级 / 行内块即可。
2025年12月24日 01点12分 5
1