๐ŸŒˆ [Section1] 3. HTML & CSS

ํ˜„์ฃผยท2022๋…„ 8์›” 23์ผ
0

bootcamp

๋ชฉ๋ก ๋ณด๊ธฐ
3/71
post-thumbnail

๐Ÿ“• ์˜ค๋Š˜ ๋ฐฐ์šด ๋‚ด์šฉ!

  • HTML & CSS & Javascript ๊ฐ๊ฐ์˜ ์—ญํ• 
  • HTML์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ์™€ ๋ฌธ๋ฒ•, ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์š”์†Œ
  • CSS์˜ ์‹œ๋งจํ‹ฑ ํƒœ๊ทธ(semantic tag), id์™€ class, ์…€๋ ‰ํ„ฐ์˜ ์ข…๋ฅ˜, ํ…์ŠคํŠธ ๊พธ๋ฏธ๊ธฐ ๋ช…๋ น์–ด
  • ๋ฐ•์Šค

โœ๏ธ HTML & CSS & Javascript

โœ” HTML (HyperText Markup Languages)

  • ์›น ํŽ˜์ด์ง€์˜ ๊ตฌ์กฐ๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ๋งˆํฌ์—… ์–ธ์–ด (Structure)
  • Tag (<..>)๋“ค์˜ ์ง‘ํ•ฉ์œผ๋กœ ์ด๋ฃจ์–ด์ง

โœ” CSS (Cascading Style Sheet)

  • ๋””์ž์ธ ์š”์†Œ๋ฅผ ์‹œ๊ฐํ™”ํ•˜๋Š” ์Šคํƒ€์ผ ์‹œํŠธ ์–ธ์–ด (Presentation)
  • ๋ผˆ๋Œ€(HTML)๊ฐ€ ์žˆ์–ด์•ผ CSS๋„ ์žˆ์„ ์ˆ˜ ์žˆ์Œ
    -> UX(User Experience)๊ฐ€ ๋†’์•„์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— UI(User Interface)๋ฅผ ๊พธ๋ฏธ๋Š” ๊ฒƒ

    ๐Ÿ’ฌ ์—ฌ๊ธฐ์„œ cascading ์ด๋ž€!
    -> ํŠธ๋ฆฌ๊ตฌ์กฐ๋ผ์„œ ๋ฐ‘์œผ๋กœ ์˜ํ–ฅ์„ ๋ผ์น˜๋Š” ํŒŒ๋„์™€ ๊ฐ™์•„์„œ ์“ฐ์ž„ (ํ•˜์œ„ ํƒœ๊ทธ์— ๋‹ค ์ ์šฉ๋จ)

โœ” Javascript

  • ์›น ํŽ˜์ด์ง€๋ฅผ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๋งŒ๋“ค์–ด ์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉ์ด ๊ฐ€๋Šฅํ•˜๊ฒŒํ•˜๋Š” ์–ธ์–ด (Interation)

โœ๏ธ HTML์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ

<!DOCTYPE html>
<html>
	<head>
    	<title>ํƒญ ์ด๋ฆ„</title>
    </head>
    <body>
    	<h1>์ œ๋ชฉ 1</hi>
        <div>
        	<span>
            	.
            	.
            	.
            </span>
         </div>
      </body>
</html>
  • ๋ชจ๋“  ํƒœ๊ทธ๋“ค์€ ์—ฌ๋Š” ํƒœ๊ทธ(opening tag)์™€ ๋‹ซ๋Š” ํƒœ๊ทธ(closing tag)๋กœ ๊ตฌ์„ฑ
    (but, ing ํƒœ๊ทธ, input ํƒœ๊ทธ ๋“ฑ์€ ๋‹ซ๋Š” ํƒœ๊ทธ๋ฅผ ์“ฐ์ง€ ์•Š์•„๋„ ๋จ)
  • ํŠธ๋ฆฌ๊ตฌ์กฐ๋กœ ํ•˜์œ„ ํƒœ๊ทธ๋“ค์— ์˜ํ–ฅ์„ ๋ฏธ์นจ

    โœ” !DOCTYPE html -> ํ˜„์žฌ ๋ฌธ์„œ๊ฐ€ HTML5 ๋ฌธ์„œ์ž„์„ ๋ช…์‹œ
    โœ” html -> HTML ๋ฌธ์„œ์˜ ๋ฃจํŠธ(root) ์š”์†Œ๋ฅผ ์ •์˜ํ•œ๋‹ค
    โœ” head -> HTML ๋ฌธ์„œ์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ(metadata)๋ฅผ ์ •์˜ (ํŽ˜์ด์ง€ ์„ค๋ช…)
    โœ” body -> ์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ํ†ตํ•ด ๋ณด์ด๋Š” ๋‚ด์šฉ(content) ๋ถ€๋ถ„

โœ”๏ธ <p class="paragraph"> ์ด๊ฒƒ์€ ๋ฌธ์žฅ์ด๋‹ค </P> ์—ฌ๊ธฐ์—์„œ

  • <p class="paragraph">๊ฐ€ ์‹œ์ž‘ํƒœ๊ทธ(opening tag) / </P>๊ฐ€ ์ข…๋ฃŒํƒœ๊ทธ(closing tag)
  • class๊ฐ€ ์†์„ฑ ์ด๋ฆ„ (attribute name) / paragraph๊ฐ€ ์†์„ฑ๊ฐ’ (attribute value)

โœ๏ธ HTML์—์„œ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์‹œ๋ฉ˜ํ‹ฑ ํƒœ๊ทธ(semantic tag)

<h1> : 1๋ฒˆ์งธ๋กœ ํฐ ์ œ๋ชฉ
<h2> : 2๋ฒˆ์งธ๋กœ ํฐ ์ œ๋ชฉ
.
.
<h6> : 6๋ฒˆ์งธ๋กœ ํฐ ์ œ๋ชฉ

<div> : ์˜์—ญ ๊ตฌ๋ถ„ (ํ•œ ์ค„ ์ฐจ์ง€)

<section> : ์ œ๋ชฉ, ์ฝ˜ํ…์ธ ๊ฐ€ ํฌํ•จ๋œ ๋‚ด์šฉ์˜ ์˜์—ญ ๊ตฌ๋ถ„ ( <div>์™€ ํฌ๊ฒŒ ๋‹ค๋ฅธ ์  X )

<span> : ์„ ํƒํ•œ ๊ตฌ์—ญ๋งŒ ์ฐจ์ง€

<img> : ์‚ฌ์ง„ ํŒŒ์ผ ์ฒจ๋ถ€

  • Ex. <img src="๋งํฌ">

<video> : ์˜์ƒ ๋งํฌ ์ฒจ๋ถ€

  • Ex. <video src="๋งํฌ">์—ฌ๊ธฐ</video>
    <video src="๋งํฌ" contol>์—ฌ๊ธฐ</video> -> control์€ ์˜์ƒ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์ปจํŠธ๋กคํ•  ์ˆ˜ ์žˆ๋„๋ก

<a> : ๋งํฌ ์ฒจ๋ถ€

  • Ex. <a href="๋งํฌ">์—ฌ๊ธฐ</a> -> '์—ฌ๊ธฐ'๋ผ๊ณ  ์“ฐ์—ฌ์ง„ ๋งํฌ ๋ˆ„๋ฅด๋ฉด ํ˜„์žฌ ์ฐฝ์— ๋œจ๋„๋ก
    <a href="๋งํฌ" target="_blank">์—ฌ๊ธฐ</a> -> '์—ฌ๊ธฐ'๋ผ๊ณ  ์“ฐ์—ฌ์ง„ ๋งํฌ ๋ˆ„๋ฅด๋ฉด ์ƒˆ๋กœ์šด ์ฐฝ์— ๋œจ๋„๋ก

<input> : ์ž…๋ ฅ์ฐฝ

  • Ex. <input type="text"> -> ์ž…๋ ฅ์ฐฝ ์ƒ์„ฑ
    <input type="radio"> -> ์—ฌ๋Ÿฌ ์˜ต์…˜ ์ค‘ ํ•˜๋‚˜ ์„ ํƒ ๊ฐ€๋Šฅ ์ฒดํฌ๋ฐ•์Šค ์ƒ์„ฑ
    <input type="checkbox"> -> ๋‹ค์ค‘ ์„ ํƒ ๊ฐ€๋Šฅ ์ฒดํฌ๋ฐ•์Šค ์ƒ์„ฑ
    <input type="password"> -> ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐฝ ์ƒ์„ฑ (๋น„๋ฒˆ์ด ์•ˆ๋ณด์ด๋„๋ก ๋‚˜์˜ด)

<textarea> : ์ค„๋ฐ”๊ฟˆ ๊ฐ€๋Šฅํ•œ ์ž…๋ ฅ์ฐฝ

<ul> & <li> : ์ˆœ์„œ๊ฐ€ ์ƒ๊ด€ ์—†๋Š” ๋ชฉ๋ก (unordered list)
<ol> & <li> : ์ž๋™์œผ๋กœ ๋ฒˆํ˜ธ๊ฐ€ ๋ฉ”๊ฒจ์ง€๋Š” ๋ชฉ๋ก (ordered list)

<button> : ๋ฒ„ํŠผ

<p> : ๋ฌธ๋‹จ (paragraph)

  • Ex. <p>์•ˆ๋…•ํ•˜์„ธ์š”! <br/> ๋ฐ˜๊ฐ‘์Šต๋‹ˆ๋‹ค .. </p> -> <br/>์“ฐ๋ฉด ์ค„๋ฐ”๊ฟˆ

<section> : ๋ฌถ์–ด์„œ ํ•˜๋‚˜์˜ ๊ตฌ์—ญ ๊ตฌ๋ถ„

[์ฐธ๊ณ ]
https://developer.mozilla.org/ko/docs/Web/HTML/Element#%EC%BD%98%ED%85%90%EC%B8%A0_%EA%B5%AC%ED%9A%8D

โœ” Block-lvel elements

  • ํ•œ ์ค„์„ ์ฐจ์ง€ํ•˜์—ฌ ๋‹ค์Œ ์š”์†Œ๊ฐ€ ์ค„๋ฐ”๊ฟˆ์ด ๋จ

    <div> <p> <h1> <ul> <li> ๋“ฑ

โœ” Inline elements

  • ์ปจํ…์ธ  ๋งŒํผ๋งŒ ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•˜์—ฌ ๋‹ค์Œ ์š”์†Œ๊ฐ€ ์ค„๋ฐ”๊ฟˆ์ด ๋˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ์˜†์œผ๋กœ ์˜ด

    <span> <a> <strong> <img> ๋“ฑ


โœ๏ธid VS class

  • id : ๊ณ ์œ ํ•œ ์ด๋ฆ„์„ ๋ถ™์ผ ๋•Œ ์‚ฌ์šฉ ( ํ•œ ๋ฌธ์„œ์— ๋‹จ ํ•˜๋‚˜์˜ ์š”์†Œ๋งŒ ์‚ฌ์šฉ )

    Ex. html์— <h1 id="h-title">๋ฌธ์žฅ์ด๋‹ค.</h1> ์“ด ํ›„
    style.css์— #h-title{ color : red: } ํ•˜๋ฉด ์ € ์ปจํ…์ธ ๋งŒ ์ƒ‰์ด ๋นจ๊ฐ•์œผ๋กœ ๋ฐ”๋€œ!

  • class : ๋ฐ˜๋ณต๋˜๋Š” ์˜์—ญ์„ ์œ ํ˜•๋ณ„๋กœ ๋ถ„๋ฅ˜ํ•  ๋•Œ ์‚ฌ์šฉ ( ๋™์ผํ•œ ๊ฐ’์„ ๊ฐ–๋Š” ์š”์†Œ๋“ค์— ์‚ฌ์šฉ ๊ฐ€๋Šฅ )

    Ex. html์—

     <ul>
    	<li class="item">๊ฐ€๋ฐฉ</li>
    	<li class="item">์˜ท</li>
    	<li class="item">ํ•ธ๋“œํฐ</li>
    	<li class="item">์ง€๊ฐ‘</li>
    </ul>

    ์“ด ํ›„์— style.css์— .item { text-decoration: underline; } ํ•˜๋ฉด ์ € ์ปจํ…์ธ ๋“ค์— ๋ชจ๋‘ ๋ฐ‘์ค„์ด ์ƒ๊น€!


โœ๏ธ ์…€๋ ‰ํ„ฐ(selector)์˜ ์ข…๋ฅ˜

  • ์ „์ฒด ์…€๋ ‰ํ„ฐ : *{} -> ์ „์ฒด ์„ ํƒ

  • id ์…€๋ ‰ํ„ฐ : #something {} -> something์ด๋ผ๋Š” ์ด๋ฆ„์˜ id ์„ ํƒ

  • class ์…€๋ ‰ํ„ฐ : .something {} -> something์ด๋ผ๋Š” ์ด๋ฆ„์˜ class ๋ชจ๋‘ ์„ ํƒ

  • ํ›„์† ์…€๋ ‰ํ„ฐ : body div {} -> body์˜ ํ›„์† ์—˜๋ ˆ๋จผํŠธ๋“ค ์ค‘ div ๋ชจ๋‘ ์„ ํƒ

  • ์ž์‹ ์…€๋ ‰ํ„ฐ : body > div {} -> body์˜ ์ž์‹ ์—˜๋ ˆ๋จผํŠธ๋“ค ์ค‘ div ๋ชจ๋‘ ์„ ํƒ

  • ์ธ์ ‘ ํ˜•์ œ ์…€๋ ‰ํ„ฐ : div + p {}

  • ํ˜•์ œ ์…€๋ ‰ํ„ฐ : div ~ p {}
    .
    .

์‚ฌ์‹ค ์•„์ง๊นŒ์ง€๋Š” ์ธ์ ‘ ํ˜•์ œ ์…€๋ ‰ํ„ฐ์™€ ํ˜•์ œ ์…€๋ ‰ํ„ฐ์˜ ์ฐจ์ด๋ฅผ ๋ชจ๋ฅด๊ฒ ๋Š”๋ฐ ์•Œ๋ฉด ๋‹ค์‹œ ์ ์–ด์•ผ์ง€..!


โœ๏ธ CSS์˜ ํ…์ŠคํŠธ ๊พธ๋ฏธ๊ธฐ ๋ช…๋ น์–ด

  • color: ๊ธ€์ž ์ƒ‰์ƒ

  • font-size: ๊ธ€์ž ํฌ๊ธฐ Ex. 10px

  • background-color: ๋ฐฐ๊ฒฝ ์ƒ‰์ƒ

  • border-color: ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ

  • border-width : ํ…Œ๋‘๋ฆฌ ๋‘๊ป˜

  • font-family: ๊ธ€๊ผด(ํฐํŠธ) ์„ค์ •

  • text-decoration : ๋ฐ‘์ค„, ๊ฐ€๋กœ์ค„

  • margin: 10px 20px 30px 40px; : ๊ฐ๊ฐ ์ƒ์šฐํ•˜์ขŒ์— ๋ฐ”๊นฅ์ชฝ ์—ฌ๋ฐฑ(์‹œ๊ณ„๋ฐฉํ–ฅ)
    (margin-top: 10px; , margin-right: 20px; , margin-bottom: 30px; , margin-left: 40px; ์ด๋ ‡๊ฒŒ ํŠน์ •ํ•ด์„œ ํ•ด๋„ ๊ฐ€๋Šฅ)

  • margin: 10px 20px; ์œ„, ์•„๋ž˜๊ฐ€ 10px, ์ขŒ, ์šฐ๊ฐ€ 20px

  • margin: 10px; ๋ชจ๋“  ์—ฌ๋ฐฑ์ด 10px

  • padding: 10px 20px 30px 40px; ์ƒ์šฐํ•˜์ขŒ ์•ˆ์ชฝ ์—ฌ๋ฐฑ(์‹œ๊ณ„๋ฐฉํ–ฅ)


โœ๏ธ ๋ฐ•์Šค

  • ๋ชจ๋“  HTML์€ ์—ฌ๋Ÿฌ ์š”์†Œ๋“ค๋กœ ๋ฌถ์ธ ๋ฐ•์Šค๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ์ž์˜ ํฌ๊ธฐ, ์†์„ฑ์ด ์ค‘์š”
  • border, margin, padding, contents ์œผ๋กœ ์ ์ฐจ ๊ฐ์‹ธ ์•ˆ๋Š” ์‹์˜ ๋ฐ•์Šค๋“ค๋กœ ๊ตฌ์„ฑ

[๋ฐ•์Šค ๊ณ„์‚ฐ๋ฒ• ์ข…๋ฅ˜]
โœ” content-box
-> ๋ฐ•์Šค์˜ ํฌ๊ธฐ๋ฅผ ์ธก์ •ํ•˜๋Š” ๊ณ„์‚ฐ๋ฒ• (์—ฌ๋ฐฑ, ํ…Œ๋‘๋ฆฌ ํฌํ•จ X)
โœ” border-box
-> ์—ฌ๋ฐฑ, ํ…Œ๋‘๋ฆฌ๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฐ•์Šค ํฌ๊ธฐ ๊ณ„์‚ฐ๋ฒ•

[๋ฐ•์Šค ์ข…๋ฅ˜]

  1. Block ๋ฐ•์Šค
  • ์ค„๋ฐ”๊ฟˆ ๊ฐ€๋Šฅ
  • width, height ์ง€์ • ๊ฐ€๋Šฅ

    Ex. <h1> <p> <ul> <ol>

  1. inline ๋ฐ•์Šค
  • ์ค„๋ฐ”๊ฟˆ ๋ถˆ๊ฐ€๋Šฅ
  • width, height ์ง€์ • ๋ถˆ๊ฐ€๋Šฅ

    Ex. <span> <strong> <a>

  1. inline-block ๋ฐ•์Šค
  • ์ค„๋ฐ”๊ฟˆ ๋ถˆ๊ฐ€๋Šฅ
  • width, height ์ง€์ • ๊ฐ€๋Šฅ

๐Ÿ˜œ HTML ์‹ค์Šต !

replit์ด๋ผ๋Š” ์‚ฌ์ดํŠธ์—์„œ ๊ฐ„๋‹จํ•œ ์—ฐ์Šต์„ ํ•ด๋ดค๋‹ค
๊ฐ•์˜์—์„œ ๋ฐฐ์› ๋˜ ์ฝ”๋“œ์—์„œ ๋‚ด๊ฐ€ ์กฐ๊ธˆ์”ฉ ๋ฐ”๊พธ๊ณ  ๋ฐฐ์šด ํƒœ๊ทธ๋“ค์„ ์จ์„œ ์•„์ง ๋ฏธ์ˆ™ํ•˜์ง€๋งŒ ๋‚˜๋งŒ์˜ ์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค์–ด ๋ดค๋‹ค !!
์•„์ฃผ ๋ฟŒ๋“ฏ ใ…Žใ…Ž
https://dimplededucatedsymbols.hjjju.repl.co/


๐ŸŒˆ ๋Š๋‚€์ 

์ง์ ‘ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค์–ด๋ณด๋Š” ๊ฑด ์ฒ˜์Œ์ด์—ˆ๋Š”๋ฐ ์ด๋ ‡๊ฒŒ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์ง€๋Š” ์ค„ ๋ชฐ๋ž์–ด์„œ ๊นœ์ง ๋†€๋žŒ๊ณผ ํ•จ๊ป˜ ์ •๋ง ์‹ ๊ธฐํ–ˆ๋‹ค. ๋‹ค๋งŒ HTML๊นŒ์ง€๋Š” ํฅ๋ฏธ๋กœ์› ์œผ๋‚˜ CSS์—์„œ ์…€๋ ‰ํŠธ์˜ ์˜๋ฏธ ๊ณ ๋ฅด๋Š” ํ€ด์ฆˆ์—์„œ ๋จธ๋ฆฌ๊ฐ€ ๋„ˆ๋ฌด ์•„ํŒ ๋‹ค ใ…  ์ฒ˜์Œ์— 35๋ฌธ์ œ ํ’€์–ด์„œ 60์  ๋งž์•˜๋Š”๋ฐ ๊ทธ๋ž˜๋„ ์ข€ ๋” ์ดํ•ดํ•ด์„œ ๋‹ค์Œ๋ฒˆ์—” 71์ !
๊ทธ๋ž˜๋„ ์ด๊ฑด ํ”„๋ก ํŠธ์—”๋“œ ์˜์—ญ์ด๋‹ˆ๊นŒ ์ด์ •๋„๋ฉด ๋˜๊ฒ ์ง€?ํ•˜๋Š” ์ƒ๊ฐ ใ…Žใ…Ž

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