検索

Container (is--container)

is--container は、container-type を宣言してコンテナクエリを有効にするためのクラスです。

CSS

// コンテナ定義 + 併用クラスで内部のコンテンツ幅を制御する。
.is--container {
  container-type: inline-size;
}

// 最外側の is--container 直下の子要素にだけ --sz--bleed を 100cqi で上書きする。
//   Memo: .is--container:not(:where(.is--container .is--container)) を使ってもいいがわかりにくいので、以下のようにしている
.is--container > * {
  --sz--bleed: 100cqi;
}
.is--container.has--gutter > * {
  // has--gutterがある場合はその分を加算
  --sz--bleed: calc(100cqi + var(--gutter-size) * 2);
}
.is--container .is--container > * {
  // --sz--bleed は一番先祖(最外側) の is--container で値をセットしたらあとは引き継ぐだけ
  --sz--bleed: inherit;
}

Lismコンポーネントでの使い方

isContainer プロパティでどのコンポーネントからでも呼び出せるようになっています。

プロパティ出力
isContaineris--container

さらに、<Lism isContainer> のエイリアスとして、<Container> も用意しています。

Import

import { Container } from 'lism-css/react';

Usage

使用例

このBOXは、paddingが切り替わります。
リサイズ
<Container isWrapper="s" p="20">
<Box bd p={['10', '30']}>
このBOXは、paddingが切り替わります。
</Box>
</Container>

© Lism CSS. All rights reserved.