Bulmaはデフォルトでレスポンシブです。 Bulmaのレスポンシブについて詳しくはこちら.
Bulma Sass レスポンシブ Mixin
各画面サイズに対して異なるスタイルを定義できるmixin
from()とuntil() mixin #
CSSのレスポンシブはメディアクエリに基づいています(MDNドキュメントを参照)。
Bulmaは2つの便利なレスポンシブmixinを提供します:
-
ブレークポイント以上の画面幅のデバイスをターゲットにする
@mixin from($breakpoint)
-
ブレークポイント未満の画面幅のデバイスをターゲットにする
@mixin until($breakpoint)
使い方は非常に簡単です
from() #
from()
mixinには、それを含むスタイルが適用される画面幅を設定する単一のパラメーターがあります
Sassソース
@use "bulma/sass/utilities/mixins";
.my-element {
background: red;
@include mixins.from(1280px) {
background: blue;
}
}
CSS出力
.my-element {
background: red;
}
@media screen and (min-width: 1280px) {
.my-element {
background: blue;
}
}
画面幅が1279px以下の場合、要素の背景は赤色になります。
画面幅が1280px以上の場合、要素の背景は青色になります。
until() #
until()
mixinには、それを含むスタイルが適用される画面幅(-1px)を設定する単一のパラメーターがあります。
つまり、1280px
の値を設定した場合、スタイルは1279px
の画面幅に適用されますが、1280px
の画面幅には適用されません。
この1pxのオフセットの理由は、同じブレークポイント値でfrom()
とuntil()
の両方を使用できるようにするためです。これにより、2つのルールセットの間にギャップは残りません。
Sassソース
@use "bulma/sass/utilities/mixins";
$breakpoint: 1280px;
.my-element {
@include mixins.until($breakpoint) {
background: green;
}
@include mixins.from($breakpoint) {
background: orange;
}
}
CSS出力
@media screen and (max-width: 1279px) {
.my-element {
background: green;
}
}
@media screen and (min-width: 1280px) {
.my-element {
background: orange;
}
}
画面幅が1279px以下の場合、要素の背景は緑色になります。
画面幅が1280px以上の場合、要素の背景はオレンジ色になります。
名前付きmixin #
4つのブレークポイントと5つの画面サイズをサポートすることで、Bulmaは多くの異なる設定をサポートできます。
@include mixins.from()
@include mixins.until()
これらのレスポンシブmixinは、Bulmaで使用されている画面サイズとブレークポイントに基づいて名前が付けられているため、それらを使用してレスポンシブデザインを作成できます。
モバイル 最大 768px |
タブレット769px から1023px の間 |
デスクトップ1024px から1215px の間 |
ワイドスクリーン1216px から1407px の間 |
FullHD1408px 以上 |
---|---|---|---|---|
|
- |
|||
- |
|
|||
- |
|
|||
- |
|
|||
- |
|
|||
- |
|
- |
||
- |
|
- |
||
- |
|
- |
||
|
- |
|||
|
- |
|||
|
- |
Bulmaのレスポンシブについて詳しくはこちらをご覧ください。