原因・理由
FlexやGridにcontainer-typeを指定した子要素があったときに、その要素の幅がなくなってしまうのですが仕様でしょうか。
原因・仕様かどうかまでは、わかりませんでしたが、
挙動を見るに、以下のようになっています。
'display: flex' や 'display: grid`は 要素の外部(親要素の振る舞い)と要素の内部(小要素の表示・動作)に変更を与えるプロパティになります。
その要素の内部(小要素の表示・動作)への変更が無効化?継承がうまく行っていないように見えます。
CSS Container Queries 開発状況(ダッシュボード)を見ると、一部のブラウザでは開発中の部分もあるので、バグか、開発中なのかもしれません。
解決策
FlexやGridの内部(小要素の表示・動作)への変更が無効化?継承がうまく行っていないように見えるので、いかのようにすれば良さそうです。
※ 意図した修正方法じゃなかったらすみません。🙏
Flex
Flex Itemの初期値 flex: 1 1 auto;
を明記してあげるのがいいと思います。
.wrapper--useContainer .box2 {
container-type: inline-size;
container-name: PinkArea;
+ flex: 1 1 auto;
}
Grid
grid-template-columns
の 1fr
をminmax(0, 1fr)
にして、最小値を明記してあげるのがいいと思います。
.wrapper--grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
↓ こうなります。