微信小プログラムFlexレイアウト用法深入浅出分析
3649 ワード
この例では、微信ウィジェットFlexレイアウトの使い方について説明します.皆さんの参考にしてください.具体的には以下の通りです.
Flexレイアウト:Flexible Boxの略で、「フレキシブルレイアウト」を意味し、ボックスモデルに大きな柔軟性を提供します.
使用方法:
1.どのコンテナでもflexレイアウトを使用できます
2.行内要素はflexレイアウトを使用できます
3.webkitカーネルのブラウザに-webkit接頭辞を付ける
外層flexコンテナのプロパティ:
1.flex-directionプロパティ
row(デフォルト):主軸は水平方向で、始点は左端です.row-reverse:主軸は水平方向で、起点は右端にあります.column:主軸は垂直方向で、始点は上に沿っています.column-reverse:主軸は垂直方向で、起点は下に沿っています.
2.flex-wrapプロパティ
nowrap(デフォルト):改行しません.wrap:改行し、最初の行は上にあります.wrap-reverse:改行し、最初の行は下にあります.
3.flex-flowプロパティ:flex-directionプロパティとflex-wrapプロパティの略記形式で、デフォルト値はrow nowrap
4.justify-contentプロパティ:主軸上のitemの方法を定義する
flex-start(デフォルト):左揃えflex-end:右揃えcenter:中央space-between:両端揃え、項目間の間隔が等しい.space-around:各項目の両側の間隔が等しい.したがって、プロジェクト間の間隔は、プロジェクトと枠線の間隔の2倍になります.
5.align-itemsプロパティ:交差軸でアイテムをどのようにするかを定義します.
flex-start:交差軸の始点位置合わせ.flex-end:交差軸の終点位置合わせ.センター:交差軸の中点揃え.baseline:プロジェクトの最初の行のテキストのベースラインの位置合わせ.stretch(デフォルト):プロジェクトが高さを設定していない場合、またはautoに設定されている場合、コンテナ全体の高さが満たされます.
6.align-contentプロパティ:複数の軸を定義する方法で、1本の軸だけでは機能しません.
flex-start:交差軸の始点に位置合わせします.flex-end:交差軸の終点に位置合わせします.センター:交差軸の中点に位置合わせします.space-between:交差軸の両端に揃え、軸線間の間隔が平均的に分布します.space-around:各軸線の両側の間隔が等しい.したがって、軸線間の間隔は、軸線と枠線の間隔よりも2倍大きい.stretch(デフォルト):軸が交差軸全体を占めます.
プロジェクトitemのプロパティ
1.orderプロパティ:アイテムの並べ替え順序を定義します.数値が小さいほど前になり、デフォルト値は0、負数は0より前になります.
2.flex-growプロパティ:プロジェクトの拡大率を定義します.デフォルトは0です.つまり、空き領域がある場合も拡大しません.
3.flex-shrinkプロパティ:プロジェクトの縮小率を定義します.デフォルトは1です.つまり、スペースが不足するとitemが縮小します.
4.flex-basisプロパティ:余分なスペースを割り当てる前にitemが占める主軸スペース(main size)、デフォルトauto、すなわちitem自体のサイズ
5.flexプロパティ:flex-grow、flex-shrink、flex-basisの略記、デフォルト値0 1 auto、後の2つのプロパティオプション
このプロパティには、auto(1 auto)とnone(0 auto)の2つのショートカットがあります.
ブラウザが相関値を推定するため、3つの分離された属性を単独で書くのではなく、この属性を優先的に使用することをお勧めします.
6.align-selfプロパティ:単一のitemが他のitemと異なる方法でalign-itemsプロパティを上書きできるようにする
本文で述べたことは、皆さんの微信ウィジェットの開発に役立つことを望んでいます.
Flexレイアウト:Flexible Boxの略で、「フレキシブルレイアウト」を意味し、ボックスモデルに大きな柔軟性を提供します.
使用方法:
1.どのコンテナでもflexレイアウトを使用できます
.box {
display: flex;
}
2.行内要素はflexレイアウトを使用できます
.box{
display: inline-flex;
}
3.webkitカーネルのブラウザに-webkit接頭辞を付ける
.box {
display: -webkit-flex; /* Safari */
display: flex;
}
外層flexコンテナのプロパティ:
1.flex-directionプロパティ
.box {
flex-direction: row | row-reverse | column | column-reverse;
}
row(デフォルト):主軸は水平方向で、始点は左端です.row-reverse:主軸は水平方向で、起点は右端にあります.column:主軸は垂直方向で、始点は上に沿っています.column-reverse:主軸は垂直方向で、起点は下に沿っています.
2.flex-wrapプロパティ
.box{
flex-wrap: nowrap | wrap | wrap-reverse;
}
nowrap(デフォルト):改行しません.wrap:改行し、最初の行は上にあります.wrap-reverse:改行し、最初の行は下にあります.
3.flex-flowプロパティ:flex-directionプロパティとflex-wrapプロパティの略記形式で、デフォルト値はrow nowrap
.box {
flex-flow: || ;
}
4.justify-contentプロパティ:主軸上のitemの方法を定義する
.box {
justify-content: flex-start | flex-end | center | space-between | space-around;
}
flex-start(デフォルト):左揃えflex-end:右揃えcenter:中央space-between:両端揃え、項目間の間隔が等しい.space-around:各項目の両側の間隔が等しい.したがって、プロジェクト間の間隔は、プロジェクトと枠線の間隔の2倍になります.
5.align-itemsプロパティ:交差軸でアイテムをどのようにするかを定義します.
.box {
align-items: flex-start | flex-end | center | baseline | stretch;
}
flex-start:交差軸の始点位置合わせ.flex-end:交差軸の終点位置合わせ.センター:交差軸の中点揃え.baseline:プロジェクトの最初の行のテキストのベースラインの位置合わせ.stretch(デフォルト):プロジェクトが高さを設定していない場合、またはautoに設定されている場合、コンテナ全体の高さが満たされます.
6.align-contentプロパティ:複数の軸を定義する方法で、1本の軸だけでは機能しません.
.box {
align-content: flex-start | flex-end | center | space-between | space-around | stretch;
}
flex-start:交差軸の始点に位置合わせします.flex-end:交差軸の終点に位置合わせします.センター:交差軸の中点に位置合わせします.space-between:交差軸の両端に揃え、軸線間の間隔が平均的に分布します.space-around:各軸線の両側の間隔が等しい.したがって、軸線間の間隔は、軸線と枠線の間隔よりも2倍大きい.stretch(デフォルト):軸が交差軸全体を占めます.
プロジェクトitemのプロパティ
1.orderプロパティ:アイテムの並べ替え順序を定義します.数値が小さいほど前になり、デフォルト値は0、負数は0より前になります.
.item {
order: ;
}
2.flex-growプロパティ:プロジェクトの拡大率を定義します.デフォルトは0です.つまり、空き領域がある場合も拡大しません.
.item {
flex-grow: ; /* default 0 */
}
3.flex-shrinkプロパティ:プロジェクトの縮小率を定義します.デフォルトは1です.つまり、スペースが不足するとitemが縮小します.
.item {
flex-shrink: ; /* default 1 */
}
4.flex-basisプロパティ:余分なスペースを割り当てる前にitemが占める主軸スペース(main size)、デフォルトauto、すなわちitem自体のサイズ
.item {
flex-basis: | auto; /* default auto */
}
5.flexプロパティ:flex-grow、flex-shrink、flex-basisの略記、デフォルト値0 1 auto、後の2つのプロパティオプション
.item {
flex: none | [ ? || ]
}
このプロパティには、auto(1 auto)とnone(0 auto)の2つのショートカットがあります.
ブラウザが相関値を推定するため、3つの分離された属性を単独で書くのではなく、この属性を優先的に使用することをお勧めします.
6.align-selfプロパティ:単一のitemが他のitemと異なる方法でalign-itemsプロパティを上書きできるようにする
.item {
align-self: auto | flex-start | flex-end | center | baseline | stretch;
}
本文で述べたことは、皆さんの微信ウィジェットの開発に役立つことを望んでいます.