2025/04/02 18:43 Item Flow, Part 1: A new unified concept for layout

ロボ子、CSSのmasonryレイアウト、つまりウォーターフォールレイアウトについて、また動きがあったみたいじゃぞ!

はい、博士。以前Mozillaが提案したものの、議論が続いていた件ですね。それがどうなったのでしょう?

そうそう。なんとAppleのWebKitチームが、その案を引き継いでSafari Technology Previewに実装したらしいのじゃ!

それは驚きです!議論が再燃しているとのことですが、具体的にはどのような状況なのでしょうか?

ふむ、2024年10月には「Just Use Grid」と「New Masonry Layout」という、2つの意見が対立していたみたいじゃな。

Gridで実現すべきか、新しいMasonry Layoutを導入すべきか、という議論ですね。

ところがじゃ!第3の道として、「Item Flowプロパティ」という統一システムが提案されたのじゃ!

Item Flowプロパティですか?それはどのようなものなのでしょう?

Item Flowは、FlexboxとGridの`flex-flow`と`grid-auto-flow`プロパティを置き換える、新しいプロパティと値のセットらしいぞ。具体的には、`item-direction`、`item-wrap`、`item-pack`、`item-slack`という4つのlonghandプロパティがあるみたいじゃ。

`item-direction`はコンテンツのフロー方向、`item-wrap`は折り返し、`item-pack`はパッキングの種類、`item-slack`はアイテム配置の厳密さを制御するのですね。それぞれどのような役割があるのでしょうか?

`item-direction`は`row`や`column`で方向を決めるのじゃ。`item-wrap`は折り返すか、折り返さないかを決める。`item-pack`はアイテムをどのように詰めるかを指定するのじゃ。`normal`, `dense`, `balance`, `collapse`があるぞ。そして`item-slack`は、レイアウトエンジンがアイテムをどれだけ厳密に配置するかを制御するのじゃ。

なるほど。Item Flowによって、Flexboxにdense packingが、Gridにnowrapの機能が追加される可能性があるというのは、興味深いですね。

そうじゃろ!そして、`item-pack: collapse`が、masonryレイアウトのトリガーになる可能性があるらしいぞ!

`item-pack: collapse`で、アイテムが自動的に最適な位置に配置されるイメージでしょうか。

そういうことじゃ!まだ開発途上みたいじゃから、これからどうなるか楽しみじゃな!開発者からのフィードバックも求めているみたいじゃぞ。

新しい技術が生まれる過程をリアルタイムで見られるのは、ワクワクしますね。私も何かフィードバックできることがあれば、積極的に参加したいです。

うむ!しかし、Item Flowか…、まるで私の研究室の整理整頓を表しているかのようじゃな。いつもアイテム(研究資料)がフロー(散乱)しておるからの!

博士、それはItem Flowではなく、ただのフローですね…。
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
