RFS
Bootstrap的调整大小引擎会相应地缩放常见的CSS属性,以更好地利用视口和设备之间的可用空间。
          
          On this page
          
          
            
          
        
      
      什么是RFS?
Bootstrap的副项目  RFS 是一个单位大小调整引擎,最初是为调整字体大小而开发的(因此是响应式字体大小的缩写)。 如今,RFS能够用单位值重新缩放margin、padding、border-radius甚至box-shadow等大多数CSS属性。
该机制会根据浏览器视口的尺寸自动计算适当的值。 它将被编译为calc()函数,其中混合了rem和视口单位,以启用响应式缩放行为。
使用RFS
这些 mixins 包含在Bootstrap中,一旦包含Bootstrap的scs就可以使用。 RFS也可以独立安装。
使用mixin
rfs()mixin的简写形式为font-size、margin、margin-top、margin-right、margin-bottom、margin-left、padding、padding-top、pading-right、padding-bottom和padding-left`。 请参阅下面的示例,了解源代码Sass和编译的CSS。
.title {
  @include font-size(4rem);
}
.title {
  font-size: calc(1.525rem + 3.3vw);
}
@media (min-width: 1200px) {
  .title {
    font-size: 4rem;
  }
}
任何其他属性都可以传递给rfs()mixin,如下所示:
.selector {
  @include rfs(4rem, border-radius);
}
`!important’也可以添加到你想要的任何值:
.selector {
  @include padding(2.5rem !important);
}
使用函数
当你不想使用includes时,还有两个函数:
- 如果传递了px值,则rfs-value()会将值转换为rem值,在其他情况下,它会返回相同的结果。-如果属性需要重新缩放,rfs-fluid-value()将返回值的流体版本。
在本例中,我们使用Bootstrap的一个内置响应断点混合项 仅在lg断点下方应用样式。
.selector {
  @include media-breakpoint-down(lg) {
    padding: rfs-fluid-value(2rem);
    font-size: rfs-fluid-value(1.125rem);
  }
}
@media (max-width: 991.98px) {
  .selector {
    padding: calc(1.325rem + 0.9vw);
    font-size: 1.125rem; /* 1.125rem is small enough, so RFS won't rescale this */
  }
}
扩展文档
RFS是Bootstrap组织下的一个独立项目。 有关RFS及其配置的更多信息,请访问其[GitHub存储库](https://github.com/twbs/rfs/tree/{{<param“rfs_version”>}})。