1 Line layouts


これらのレイアウトは関連リンクビデオを整理しています

1.アイテムの妖精

.parent {
  display: grid;
  place-items: center;
}

2.狭いとスタック幅が広い場所スタック

.parent {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; //옵션
}

.box {
  flex: 1 1 150px; /*  Stretching: */
  flex: 0 1 150px; /*  No stretching: */
  margin: 5px;
}

3. sidebar / main

.parent {
  display: grid;
  grid-template-columns: minmax(150px, 25%) 1fr;
}

4.スタック

.parent {
  display: grid;
  grid-template-rows: auto 1fr auto;
}

5.サイドバーとスタック

.parent {
  display: grid;
  grid-template: auto 1fr auto / auto 1fr auto;
}
  
header {
  padding: 2rem;
  grid-column: 1 / 4;
}

.left-side {
  grid-column: 1 / 2;
}

main {
  grid-column: 2 / 3;
}

.right-side {
  grid-column: 3 / 4;
}

footer {
  grid-column: 1 / 4;
}

6. 12 span grid

.parent {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
  
.span-12 {
  grid-column: 1 / span 12;
}

.span-6 {
  grid-column: 1 / span 6;
}

.span-4 {
  grid-column: 4 / span 4;
}

.span-2 {
  grid-column: 3 / span 2;
}

/* centering text */
.section {
  display: grid;
  place-items: center;
  text-align: center
}

7. Repeat, Auto, Minmax

.parent {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  /*grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));*/
}

8. Line Up

.card {
  display: flex;
  flex-direction: column;
  padding: 1rem;
  justify-content: space-between;
}

9. Clamp


このうちchは文字数を表す
.card {
  width: clamp(23ch, 50%, 46ch);
  display: flex;
  flex-direction: column;
  padding: 1rem;
}

10. Respect for Aspect


これはビデオとか写真とかの비율을 정할 때 적합・・・問題は아직 모든 브라우저에서 지원하진 않는다.です
.visual {
  aspect-ratio: 16 / 9;
}
だから今代用しているのはpadding-topです.
.container {
  background-color: red;
  width: 100%;
  padding-top: 100%; /* 1:1 Aspect Ratio */
  position: relative; /* If you want text inside of it */
}

/* If you want text inside of the container */
.text {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
  • 16:9 ratio: padding-top: 56.25%;
  • 4:3 ratio: padding-top: 75%;
  • 3:2 ratio: padding-top: 66.66%;
  • 8:5 ratio: padding-top: 62.5%;
  • 計算方法:calc(縦/横*100%)

    padding topの使い方


    padding topリファレンスリンク