๐ŸŽฟ

4. CSS

HTML๋ฅผ ์˜ˆ์˜๊ฒŒ, ๋ณด๊ธฐ ์ข‹๊ฒŒ ๊พธ๋ฉฐ์ฃผ๋Š” CSS๋ฅผ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ 4๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
์™ธ๋ถ€ CSS ํŒŒ์ผ ๋กœ๋“œํ•˜๊ธฐ
<head> <link rel="stylesheet" href="css/foo.css"> </head>
ย 
HTML์•ˆ์— CSS ์ž‘์„ฑํ•˜๊ธฐ
<head> <style> body {font-size: 14px;} </style> </head>
ย 
์ธ๋ผ์ธ ์Šคํƒ€์ผ
<body style="font-size: 14px;">
ย 
CSS ํŒŒ์ผ ์•ˆ์— CSS ํฌํ•จํ•˜๊ธฐ
@import "foo.css";
ย 
์—๋ฆญ ๋งˆ์ด์–ด์˜ reset CSSย https://meyerweb.com/eric/tools/css/reset/
Normalize.cssย https://necolas.github.io/normalize.css/
๊ฐ ๋ธŒ๋ผ์šฐ์ €๋“ค์— ์ž์ฒด์ ์œผ๋กœ ์ ์šฉ๋˜์–ด ์žˆ๋Š” ๊ธฐ๋ณธ ์Šคํƒ€์ผ(์—ฌ๋ฐฑ ๋“ฑ)์„ ์ดˆ๊ธฐํ™” ์‹œ์ผœ์„œ ์›ํ•˜๋Š” ๋””์ž์ธ์„ ์ ์šฉํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค. ์œ„์˜ ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ•์„ ์ผ๋ฐ˜์ ์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋ฉฐ, ํ”„๋กœ์ ํŠธ์— ๋งž๊ฒŒ ์ง์ ‘ ๋งŒ๋“ค์–ด ์“ฐ๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.
ย 
/* ์„ ํƒ์ž */ body { background-color: red; /* ์†์„ฑ */ /* ๊ฐ’ */ }
โ–ฒ body์˜ background-color๋ฅผ red๋กœ ์„ค์ •
ย 
/* ์„ ํƒ์ž */ header a { display: inline-block; /* ์†์„ฑ */ /* ๊ฐ’ */ }
โ–ฒ header์— ํฌํ•จ๋˜์–ด ์žˆ๋Š” a์˜ display๋ฅผ inline-block์œผ๋กœ ์„ค์ •
ย 
์•„๋ž˜์˜ ๋‚ด์šฉ ์™ธ์—๋„ ๋งŽ์€ ์„ ํƒ์ž๋“ค์ด ์žˆ์ง€๋งŒ, ๊ณต๋ถ€๋ฅผ ์ฒ˜์Œ ์‹œ์ž‘ํ•  ๋–„ ์šฐ์„  ์•Œ๋ฉด ์ข‹์€ ๊ฒƒ๋“ค ์œ„์ฃผ๋กœ ์ถ”๋ ค๋ณด์•˜์Šต๋‹ˆ๋‹ค.
ย 
  • * :ย ๋ฌธ์„œ ๋‚ด์˜ ๋ชจ๋“  ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒ.
  • body, header, h1, section ๋“ฑ ํ•ด๋‹น ์ด๋ฆ„์„ ๊ฐ€์ง„ html ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒ.
  • #foo id ์„ ํƒ์ž : <div id="foo">์˜ ํ˜•ํƒœ๋กœ, id๋Š” ์ค‘๋ณต์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์œ ์ผํ•œ ๊ฐ’.
  • .foo class ์„ ํƒ์ž : <div class="foo">์˜ ํ˜•ํƒœ๋กœ, ์ค‘๋ณต์ด ๊ฐ€๋Šฅ. class๋กœ ์ž์ฃผ ์“ฐ๋Š” ์Šคํƒ€์ผ์„ ์ •์˜ํ•ด๋‘๊ณ  ์žฌ์‚ฌ์šฉ.
  • input[type="text"] : input ์—˜๋ฆฌ๋จผํŠธ ์ค‘ type ์†์„ฑ์˜ ๊ฐ’์ดย text์ธ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒ.
ย 
.foo > p : class="foo"์ธ ์—˜๋ฆฌ๋จผํŠธ์˜ ์ง๊ณ„ ์ž์‹ ์—˜๋ฆฌ๋จผํŠธ ์ค‘ p๋ฅผ ์„ ํƒ. ๋ฌธ์„œ ๋‚ด์˜ ๋ชจ๋“  ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒ.
ย 
.foo > p ์„ค๋ช… ์˜ˆ์‹œ code
<section class="foo"> <header> <h1>์ง‘์—์„œ ๋ง›์žˆ๋Š” ํ”ผ์ž ๋งŒ๋“ค๊ธฐ</h1> <p>์ฃผ์œ„์—์„œ ์‰ฝ๊ฒŒ ๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ์žฌ๋ฃŒ๋ฅผ ์ค‘์‹ฌ์œผ๋กœ</p> </header> <p>AAAAA</p> <-.foo>p </section>
ย 
.foot:first-child/.foo:last-child/.foo-nth-child(n) ์„ค๋ช… ์˜ˆ์‹œ code
<ul> <li class="foo">1</li> <!-- .foo:first-child --> <li class="foo">2</li> <li class="foo">3</li> <!-- .foo:nth-child(3) --> <li class="foo">4</li> <li class="foo">5</li> <!-- .foo:last-child --> </ul>
.foo:first-child : class="foo"์ธ ์—˜๋ฆฌ๋จผํŠธ ์ค‘ ์ฒซ๋ฒˆ์งธ ์ž์‹์ธ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒ
.foo:last-child : class="foo"์ธ ์—˜๋ฆฌ๋จผํŠธ ์ค‘ ๋งˆ์ง€๋ง‰ ์ž์‹์ธ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒ
.foo:nth-child(n) class="foo"์ธ ์—˜๋ฆฌ๋จผํŠธ ์ค‘ n๋ฒˆ์งธ ์ž์‹์ธ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒ
ย 
notion imagenotion image
box-sizing: content-box (๊ธฐ๋ณธ๊ฐ’)
width: 300px; height: 200px; padding: 20px; border: 5px; soild black; margin: 15px;
ย 
.box { box-sizing: content-box; width: 300px; height: 200px; padding: 20px; border: 5px solid black; margin: 15px; }
ย 
notion imagenotion image
ย 
box-sizing: border-box (border๊นŒ์ง€ width์— ํฌํ•จ)
width: 300px; height: 200px; padding: 20px; border: 5px; soild black; margin: 15px;
ย 
.box { box-sizing: border-box /* border๊นŒ์ง€ width์— ํฌํ•จ */ width: 300px; height: 200px; padding: 20px; border: 5px solid black; margin: 15px; }
ย 
CSS์— ๋Œ€ํ•ด ์ข€ ๋” ์ƒ์„ธํ•œ ๋‚ด์šฉ์„ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด, ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”. ์—ญ์‹œ ๋ฌด๋ฃŒ์ฑ…์ด๋ฉฐ, ์ค‘๊ธ‰์ž๋กœ ๋„์•ฝํ•˜๊ธฐ ์œ„ํ•œ ์ƒ์ƒˆํ•œ ๋‚ด์šฉ์ด ๋‹ด๊ฒจ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฆฌ๋””๋ถ์Šค์— ๋ฌด๋ฃŒ์ฑ…์œผ๋กœ๋„ ๊ณต๊ฐœ๊ฐ€ ๋˜์–ด์žˆ์ง€๋งŒ, ์•„๋ž˜ Notion Page์—์„œ ๋ณด์‹œ๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.
ย 
๐Ÿ•ต
Web Animation 1๋ถ€ css Animation
๐Ÿšช
Web Animation 2๋ถ€ js Animation
ย 
ย