skillup

技術ブログ

デザイン

flexショートハンドに関して

投稿日:

実務でflexをちょこちょこ使うようになりました。

やはりfloatなどで組むことと比べると圧倒的に楽ですね・・・

んで、あまり理解してなかったショートハンド要はgrow,basis,shinkに関して。

別々に書いてもいいんですが、一緒に書いた方がスマートでしょう。

大事なことはwidthを設定するプロパティだということ。

以下下記 URLを参考に。

https://github.com/umanari145/css/flex/flex2

flex-basicに関して

そのカラムが持っている基本の幅です。基本的にはこの幅を元に計算します。

ちなみにautoだと内包する要素に依存することになります。0でも中が潰れることはないようです。

flex-growに関して

余白が会った時にその分配比率です。なので余白がない時には意味がありません。

余白があっても0だと余白が分配されず、basisの値のままになります。

詳細な計算式はソースやリンクなどを参照。つっても簡単で単純に比率で分配するだけです。

flex-shrinkに関して

こちらは親要素に対して幅が足りない時の縮む割合です。なので子要素の幅が親要素を超過していないと、意味がありません。

growと違い計算方法がかなり複雑だと思われます。子要素の幅がまちまちなので通常の割合で縮むと幅が広いブロックの方が不利になるからです。

子要素が同じ幅だったり、違っていても伸縮率が1:1なら楽なんですけどね・・・

詳細な計算方法はネットを探しても出てきませんでした。要調査です。

参考リンク

大変わかりやすいです。流行っている技術はこういうのを見つけるのが楽だからありがたいですね・・

Flexboxを使うなら知っておきたい「flexアイテム」の幅の計算方法

【Flexbox】幅・伸縮率を指定するflexboxのプロパティ

 

-デザイン
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

CSSのブロックとインライン、レイアウトについて

今回はCSSを組む時のブロックレベルとインラインの基本とレイアウトに関して。 Contents1 ブロックレベルとインライン1.1 ブロックレベル要素1.2 インライン要素1.2.1 参考リンク2 レ …

no image

BrowserSyncを使ったホットリロードに関して

BrowserSyncを使ったブラウザのホットリロードに関して。 ホットリロードとは「エディタなどで更新があった際にブラウザがすぐに検知して、最新の状態に自動更新してくれる」状態にブラウザをすることで …

no image

固定されたナビ(ヘッドとサイド)

boostrapでサイトを作るときにヘッダーとサイドバーを固定したいときについてメモします。 Contents1 ヘッダーを固定したい場合2 サイドバーを固定したい場合3 参考リンク ヘッダーを固定し …

no image

CSSはまりやすいポイント ※随時更新予定

CSSにてよく確認するのネタに関して Contents1 中央寄せ2 命名3 テーブル 中央寄せ vertical-alignを指定できるのは「インライン要素」と「テーブルセル」だけ text-ali …

no image

パララックス系のギャラリー(中央ネタ)

ギャラリー的な画像を使ったときに思ったこと。下記が画像の標準的な扱い方かな・・・ 枠自体は高さも幅も決める(li要素のwidth,heightは決める) 基本は画像要素を中央揃え(positionの5 …