メインコンテンツにスキップ ドキュメント ナビゲーションにスキップ

Bootstrap のサイズ変更エンジンは、一般的な CSS プロパティをレスポンシブにスケーリングして、ビューポートとデバイス全体で使用可能なスペースをより有効に活用します。

RFSとは?

Bootstrap のサイド プロジェクトであるRFSは、最初はフォント サイズを変更するために開発されたユニット サイズ変更エンジンです (そのため、Responsive Font Sizes の略称です)。最近では、RFS はmarginpaddingborder-radius、さらにはなどの単位値を使用して、ほとんどの CSS プロパティを再スケーリングできますbox-shadow

このメカニズムは、ブラウザのビューポートのサイズに基づいて適切な値を自動的に計算します。レスポンシブ スケーリング動作を有効にするために、 とビューポート ユニットをcalc()組み合わせた関数にコンパイルされます。rem

RFS の使用

ミックスインは Bootstrap に含まれており、Bootstrap のscss. 必要に応じて、 RFS をスタンドアロンでインストールすることもできます。

ミックスインの使用

rfs()mixin にはfont-sizemarginmargin-topmargin-rightmargin-bottommargin-leftpaddingpadding-top、およびの短縮形padding-rightがあります。ソース Sass とコンパイル済み CSS については、以下の例を参照してください。padding-bottompadding-left

.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);
}

関数の使用

インクルードを使用したくない場合は、次の 2 つの関数もあります。

  • rfs-value()rem値が渡された場合は値を値に変換し、pxそれ以外の場合は同じ結果を返します。
  • rfs-fluid-value()プロパティの再スケーリングが必要な場合は、流動的なバージョンの値を返します。

この例では、Bootstrap の組み込みレスポンシブ ブレークポイント ミックスインの 1 つを使用して、ブレークポイントより下のスタイルのみを適用し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 リポジトリを参照してください。