You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SCSS使用@include transition时报错no mixin named transition如何解决?

报错原因

no mixin named transition报错的核心原因是:你使用@include指令调用了一个从未被预先定义的名为transition的mixin。
SCSS中@include的作用是调用提前用@mixin语法声明的可复用代码块,原生CSS的transition属性不能直接加@include前缀使用。

解决方法

提供两种可落地的方案:

方案1:直接使用原生CSS语法(推荐)

当前主流浏览器对transition属性的兼容性已经足够完善,不需要额外做前缀兼容的场景下,直接删除@include前缀,按原生CSS写法即可:

a {
  float: left;
  line-height: 70px;
  text-decoration: none;
  color: white;
  transition: all 0.3s;
  &:hover {
    background-color: #444;
    transition: all .5s;
  }
}

方案2:先定义transition mixin再调用

如果你需要自动生成多浏览器前缀的兼容代码,可以先在SCSS文件头部定义transition对应的mixin,再用@include调用:

// 需放在所有调用@include transition的代码之前
@mixin transition($properties, $duration, $timingFunc: ease, $delay: 0s) {
  -webkit-transition: $properties $duration $timingFunc $delay;
  -moz-transition: $properties $duration $timingFunc $delay;
  -ms-transition: $properties $duration $timingFunc $delay;
  -o-transition: $properties $duration $timingFunc $delay;
  transition: $properties $duration $timingFunc $delay;
}

完成mixin定义后,你原有代码就可以正常编译运行。

内容的提问来源于stack exchange,提问作者Noa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 02:39:04