[ HTML/CSS ] Grid | Display

from.kยท2023๋…„ 7์›” 18์ผ
0

HTML - CSS

๋ชฉ๋ก ๋ณด๊ธฐ
9/10
post-thumbnail

๐Ÿ“Œ Grid

  • CSS Grid๋Š” 2์ฐจ์›(ํ–‰๊ณผ ์—ด)์˜ ๋ ˆ์ด์•„์›ƒ ์‹œ์Šคํ…œ์„ ์ œ๊ณต (ํ–‰๊ณผ ์—ด ๋ชจ๋‘)
  • Flexible Box๋Š” ๋‹จ์ˆœํ•œ 1์ฐจ์šฐ๋„ˆ ๋ ˆ์ด์•„์›ƒ(ํ–‰, ์—ด ์ค‘ ํ•˜๋‚˜)๋ฅผ ์ œ๊ณต

- gap


- grid-template-columns/rows

: ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋œ ๊ฐ’ ๋ชฉ๋ก์œผ๋กœ ๊ทธ๋ฆฌ๋“œ์˜ ์—ด๊ณผ ํ–‰์„ ์ •์˜
: ๊ฐ’์€ ํŠธ๋ž™ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๊ณ  ๊ทธ ์‚ฌ์ด ๊ณต๊ฐ„์€ grid line ๊ฒฉ์ž์„ ์„ ๋‚˜ํƒ€๋ƒ„

.container {
	grid-template-colums: 40px 50px auto 50px 40px;
}

repeat

.container {
	grid-template-colums: repeat(5, 10px)
}

1fr

: fr = fraction 1fr์€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต๊ฐ„์˜ 1 ๋ถ€๋ถ„ (์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต๊ฐ„์— ๋Œ€ํ•œ ๋น„์œจ)

.container {
	grid-template-colums: repeat(5, 1fr)
}

.container {
	width: 800px;
	grid-template-colums: 300px 10% 1fr 1fr;
}


grid-colums/row-start/end



๐Ÿ“Œ Display

- table

: display๋ฅผ table๋กœ ์„ค์ •ํ•˜๋ฉด ์˜ค์‡ผ๊ฐ€ ํ…Œ์ด๋ธ”์ฒ˜๋Ÿผ ์ž‘๋™


์š”์†Œ+์š”์†Œ ์„ ํƒ์ž
: ๋‹ค๋ฅธ ํŠน์ • ์š”์†Œ ๋ฐ”๋กœ ๋’ค์— ์žˆ๋Š” ์š”์†Œ๋ฅผ ์„ ํƒํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋จ



๐Ÿ“Œ Position CSS

: position ์†์„ฑ์€ ์š”์†Œ๋ฅผ ์–ด๋–ป๊ฒŒ ์œ„์น˜์‹œํ‚ฌ์ง€๋ฅผ ์ •์˜

  • static (๊ธฐ๋ณธ๊ฐ’) : ๋‹ค๋ฅธ ํƒœ๊ทธ์™€์˜ ๊ด€๊ณ„์— ์˜ํ•ด ์ž๋™์œผ๋กœ ๋ฐฐ์น˜๋˜๋ฉฐ ์œ„์น˜๋ฅผ ์ž„์˜๋กœ ์„ค์ •ํ•ด ์ค„ ์ˆ˜ ์—†์Œ
  • relative : ์š”์†Œ ์ž๊ธฐ ์ž์‹ ์„ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์น˜ (์›๋ž˜ ์žˆ๋˜ ์ทจ๋ฆฌ์ธท ๊ธฐ์ค€์œผ๋กœ ์ขŒํ‘œ ์ง€์ •)
  • absolute : ๋ถ€๋ชจ(์กฐ์ƒ) ์š”์†Œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์น˜ (์ ˆ๋Œ€ ์ขŒํ‘œ์™€ ํ•จ๊ผ ์œ„์น˜๋ฅผ ์ง€์ • ๊ฐ€๋Šฅ)
    ๋ถ€๋ชจ ์š”์†Œ์— position: static์ด ์•„๋‹Œ ๊ฒƒ์ด ์žˆ์œผ๋ฉด ๊ทธ๊ฒƒ์„ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์น˜
    BUT, position: static์ด ์•„๋‹Œ ๊ฒƒ์ด ์—†๋‹ค๋ฉด body๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์น˜
  • fixed : ์Šคํฌ๋กค๊ณผ ์ƒ๊ด€์—†์ด ํ•ญ์ƒ ๋ฌธ์„œ ์ตœ ์ž์ธก ์ƒ๋‹จ์„ ๊ธฐ์ค€์œผ๋กœ ์ขŒํ‘œ๋ฅผ ๊ณ ์ •
    (์Šคํฌ๋กค ์žˆ์„ ๋•Œ ์Šคํฌ๋กค์„ ๋‚ด๋ฆฌ๋ฉด ํ•ด๋‹น ์š”์†Œ๋„ ๊ฐ™์ด ๋‚ด๋ ค๊ฐ)
  • sticky : ์Šคํฌ๋กค ์˜์—ญ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์น˜


absolute์™€ relative

: absolute๋ฅผ ๊ฐ€์ง„ ์š”์†Œ๋Š” ์ฃผ๋กœ relative๋ฅผ ๊ฐ€์ง„ ์š”์†Œ ์•ˆ์— ์‚ฌ์šฉ
: relative ์ธ ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์— absolute์ธ ๊ฐ์ฒด๊ฐ€ ์žˆ์œผ๋ฉด ์ ˆ๋Œ€ ์ขŒํ‘œ๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ, relative ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ธฐ์ค€์ ์œผ๋กœ ์žก๊ฒŒ ๋จ (์—†์œผ๋ฉด ์ „์ฒด ๋ฌธ์„œ๊ฐ€ ๊ธฐ์ค€ )


sticky

: position:sticky ๊ฐ€ ์žˆ๋Š” ์š”์†Œ ์‚ฌ์šฉ์ž์˜ ์Šคํฌ๋กค ์œ„์น˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์น˜๋จ
: ์Šคํฌ๋กค ์œ„์น˜์— ๋”ฐ๋ผ static ์š”์†Œ์™€ fixed ์š”์†Œ ์‚ฌ์ด๋ฅผ ์ „ํ™˜. ์ฃผ์–ด์ง„ ์˜คํ”„์…‹ ์œ„์น˜๊ฐ€ ๋ทฐํฌํŠธ์—์„œ ๋งŒ๋‚  ๋–„๊นŒ์ง€ staticํ•˜๊ฒŒ ๋ฐฐ์น˜๋œ ๋‹ค์Œ ์ œ์ž๋ฆฌ์— "fixed"๋จ.



๐Ÿ“Œ Z-index

: ์•ž๊ณผ ๋’ค๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์š”์†Œ๋ฅผ ๊ฒฐ์ •
: ์ธ๋ฑ์Šค๊ฐ€ ๋” ๋†’์€ ์š”์†Œ๊ฐ€ ๋‚ฎ์€ ์š”์†Œ ์•ž์— ๋‚˜ํƒ€๋‚จ (๊ธฐ๋ณธ๊ฐ’: 0, ์Œ์ˆ˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ, ์ˆœ์„œ๊ฐ’์ด ์—†์„ ๊ฒฝ์šฐ ์ฝ”๋“œ์ƒ ์ˆœ์„œ์— ๋”ฐ๋ผ ์Œ“์ž„)
: position: static ์Šคํƒ€์ผ์„ ๊ฐ€์ง€ ์š”์†Œ๋Š” ํ•ญ์ƒ ๋’ค์— ๋‚˜ํƒ€๋‚จ (z-index ํšจ๊ณผ ์—†์Œ)
: z-index๊ฐ€ ๊ฐ™๊ฑฐ๋‚˜ ๋‘ ์š”์†Œ๊ฐ€ position:static์ด๋ฉด ์ฝ”๋“œ์—์„œ ๋‚˜์ค‘์— ์ž‘์„ฑ๋œ ์š”์†Œ๊ฐ€ ์•ž์— ๋‚˜ํƒ€๋‚จ
: ๋ถ€๋ชจ์—๊ฒŒ z-index ๊ฐ’์„ ์ค„ ๊ฒฝ์šฐ ๋ถ€๋ชจ๋ผ๋ฆฌ ๋จผ์ € z-index ์ˆœ์œ„ ์ •ํ•œ ํ›„ ์ž์‹์ด ์ ์šฉ๋จ. => ์ž์‹์˜ ์ธ๋ฑ์Šค๊ฐ’์ด ์•„๋ฌด๋ฆฌ ๋†’์•„๋„ ๋ถ€๋ชจ์˜ ๊ฐ’์ด ๋‚ฎ์œผ๋ฉด ์œ„๋กœ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์—†์Œ
: z-index๋Š” position ์†์„ฑ์„ ์ง€์ •ํ•˜๊ณ  z-index ์†์„ฑ์„ ์ง€์ •ํ•ด์•ผํ•จ



๐Ÿ“Œ Media Query

: ํ™”๋ฉด ํ•ด์ƒ๋„, ๊ธฐ๊ธฐ ๋ฐฉํ–ฅ ๋“ฑ์˜ ์กฐ๊ฑด์œผ๋กœ HTML์— ์ ์šฉํ•˜๋Š” ์Šคํƒ€์ผ์„ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” CSS3์˜ ์†์„ฑ ์ค‘ ํ•˜๋‚˜
: ๋ฐ˜์‘ํ˜• ์›น ๋””์ž์ธ์—์„œ๋Š” ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด ์ ์šฉํ•˜๋Š” ์Šคํƒ€์ผ์„ ๊ธฐ๊ธฐ๋งˆ๋‹ค(ํ™”๋ฉด ํฌ๊ธฐ๋งˆ๋‹ค) ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Œ

- ์กฐ๊ฑด ๋งŒ์กฑ์‹œ ์Šคํƒ€์ผ ์ ์šฉ
@media (์กฐ๊ฑด) {
	์Šคํƒ€์ผ
}
@media [only ๋˜๋Š” not] [๋ฏธ๋””์–ด ์œ ํ˜• ] [and ๋˜๋Š” ,] (์กฐ๊ฑด๋ฌธ) {์‹คํ–‰๋ฌธ}
  • min,/max ์‚ฌ์šฉ ์ฃผ์˜์‚ฌํ•ญ
    min : (์ตœ์†Œ ๋˜๋Š” ๊ทธ ์ด์ƒ) ํฌ๊ธฐ๊ฐ€ ์ž‘์€ ์ˆœ์„œ๋Œ€๋กœ ์ž‘์„ฑ
    max : (์ตœ๋Œ€ ๋˜๋Š” ๊ทธ ์ดํ•˜) ํฌ๊ธฐ๊ฐ€ ํฐ ์ˆœ์„œ๋Œ€๋กœ ์ž‘์„ฑ





๐Ÿ“Œ CSS ์ ์šฉ ์šฐ์„ 

  1. !important๋ฅผ ๋ถ™์ธ ์†์„ฑ
height: 100px !important;
  1. HTML์—์„œ style์„ ์ง์ ‘ ์ง€์ •ํ•œ ์†์„ฑ
<div style="height: 50px;">static</div>
  1. #id ๋กœ ์ง€์ •ํ•œ ์†์„ฑ
#sticky { heidht: 30px; }
  1. .ํด๋ž˜์Šค, ๊ฐ€์ƒํด๋ž˜์Šค๋กœ ์ง€์ •ํ•œ ์†์„ฑ
.sticky { height: 20px; }






๐Ÿ“’ John Ahn - <๋”ฐ๋ผํ•˜๋ฉฐ ๋ฐฐ์šฐ๋Š” HTML, CSS> https://inf.run/MzQn

1๊ฐœ์˜ ๋Œ“๊ธ€

comment-user-thumbnail
2023๋…„ 7์›” 19์ผ

์†Œ์ค‘ํ•œ ์ •๋ณด ์ž˜ ๋ดค์Šต๋‹ˆ๋‹ค!

๋‹ต๊ธ€ ๋‹ฌ๊ธฐ