css - 使用 mixins 返回媒体查询

标签 css sass scss-mixins

我想创建一个 mixin,它会返回一个普通的 css block 以及一个媒体查询 css block 。 $base-width 对于移动设备为 100vw,对于桌面设备为 33vw

示例用法:

.app {
    @include responsive {
        width: $base-width/2;
    }
}

它基本上会编译成:

.app {
  width: 100vw/2;     // for mobile devices
  
  @media screen and (min-width: 992px) {
    width: 33vw/2;    // for desktop since $base-width: 33vw;
  }
}

左边的属性可以是任何东西,并不总是width

这可能吗?最接近的解决方案可能是什么?

谢谢!

最佳答案

 @mixin breakpoint($point) {
    @media (min-width: $point) { @content; } 
}

.app {
  width: 100vw/2;     // for mobile devices
  @include breakpoint(992px){
     width: 33vw/2; // for desktop since
  }
}

这是一种灵活的方式。

关于css - 使用 mixins 返回媒体查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56830166/

相关文章:

html - 仅使用 CSS 控制元素的位置

html - href 悬停不起作用?

html - SVG 布局属性

sass - SASS 错误消息如何显示在浏览器中?

javascript - 使用 Javascript 调用 SCSS mixin 文件

twitter-bootstrap - 从我的 scss 文件中使用 Bootstrap 的实用程序 API

css - SCSS - 结合/缩短/简化代码与参数?

javascript - 鼠标悬停问题和 jquery 问题

css - 尝试在 React 'cards' 周围设置 css 支架的高度

javascript - 为什么 node-sass-middleware 不工作?