CSS display:contents ジェネレーター
ラッパー要素を透過表示し、子要素を親のフローに直接配置。Flexbox/Gridで便利。
• contents: 要素自体は非表示、子要素のみ表示
• block: 通常のブロック表示
親コンテナ (display: flex)
(wrapper: contents)
Child 1
Child 2
Child 3
• contents: 黄色の枠(wrapper)が存在せず、子要素が直接Flexboxに配置される
• block: 黄色の枠(wrapper)がブロックとして表示される
使用例
- • Flexbox/Gridで余分なネストを排除
- • セマンティックなHTMLを維持しながらレイアウト調整
- • コンポーネント境界を超えたレイアウト
display: contents とは?
display: contentsは要素自体のボックスを生成せず、子要素のみを親のフローに配置します。 セマンティックなマークアップを保ちながら、レイアウト上は透明な要素として機能します。
主な用途
- Flexbox/Gridで余分なラッパーを無視
- React等のコンポーネントでラッパーdivを排除
- table要素での柔軟な構造化
注意点
- アクセシビリティへの影響(特にlist要素)
- IE11未対応
- 要素自体のmargin/padding/borderは無効化される