CSS SASS calc() 计算表达式或使用变量

calc()是css的一个函数,可用于元素计算长度,比如div宽度想要减去一个固定宽度后并自适应,可以写为calc(100% - 60px) 注意"-"两边有空格

sass已经是常用的预编译语言,允许使用变量等规则,如果上边写到60px是一个变量,这个表达怎么写呢

$base-sidebar-width = "60px"

css 复制代码
.main-container {
    width: calc(100% - $base-sidebar-width);
    height: calc(100% - 60px);
    transition: margin-left .28s;
    margin-left: $base-sidebar-width;
    position: fixed;
    margin-top: 60px;
  }

显然这样写是不行的,浏览器解析完是这样子的

在scss里改为这样就行了:#{$base-sidebar-width}

css 复制代码
 .main-container {
    width: calc(100% - #{$base-sidebar-width});
    height: calc(100% - 60px);
    transition: margin-left .28s;
    margin-left: $base-sidebar-width;
    position: fixed;
    margin-top: 60px;
  }
相关推荐
AI_零食35 分钟前
番茄钟鸿蒙PC Electron框架完成:状态机、定时器管理与专注力工具设计
前端·javascript·华为·electron·开源·鸿蒙·鸿蒙系统
提子拌饭13336 分钟前
逛三园游戏——基于鸿蒙PC Electron框架实现
前端·javascript·游戏·华为·electron·鸿蒙
llz_11238 分钟前
web-第三次课后作业
前端·后端·web
遗憾随她而去.1 小时前
Web地图全体系深度梳理:引擎、数据源、图层、投影核心知识
前端
爱因斯坦乐1 小时前
Vue项目整合
前端·javascript·vue.js
无风听海1 小时前
IndexedDB 深度指南 浏览器中的事务型对象数据库
前端·数据库
ct9782 小时前
组件间的通信
前端·javascript·vue.js
左手吻左脸。3 小时前
Vue 全栈面试题大全(2026 最新版最详细)
前端·javascript·vue.js
Aphasia3113 小时前
手写KeepAlive组件
前端·react.js·面试
两个西柚呀3 小时前
js中的同步和异步,三种处理异步任务的方式
前端·javascript