RFS
Bootstrap のサイズ変更エンジンは、一般的な CSS プロパティをレスポンシブにスケーリングして、ビューポートとデバイス全体で使用可能なスペースをより有効に活用します。
RFSとは?
Bootstrap のサイド プロジェクトであるRFSは、最初はフォント サイズを変更するために開発されたユニット サイズ変更エンジンです (そのため、Responsive Font Sizes の略称です)。最近では、RFS はmargin
、padding
、border-radius
、さらにはなどの単位値を使用して、ほとんどの CSS プロパティを再スケーリングできますbox-shadow
。
このメカニズムは、ブラウザのビューポートのサイズに基づいて適切な値を自動的に計算します。レスポンシブ スケーリング動作を有効にするために、 とビューポート ユニットをcalc()
組み合わせた関数にコンパイルされます。rem
RFS の使用
ミックスインは Bootstrap に含まれており、Bootstrap のscss
. 必要に応じて、 RFS をスタンドアロンでインストールすることもできます。
ミックスインの使用
rfs()
mixin にはfont-size
、margin
、margin-top
、margin-right
、margin-bottom
、margin-left
、padding
、padding-top
、およびの短縮形padding-right
があります。ソース Sass とコンパイル済み CSS については、以下の例を参照してください。padding-bottom
padding-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 リポジトリを参照してください。