
CSS / ์คํ์ผ / ์ ํ์ / ์บ์ค์บ์ด๋ฉ
CSS
โช Cascading Style Sheets์ ์ฝ์
โช ํ
์คํธ์ ์์, ํฌ๊ธฐ, ์ด๋ฏธ์ง์ ํฌ๊ธฐ, ์์น, ํ์ ์์, ๋ฐฐ์น ๋ฑ ์น ๋ฌธ์์ ๋์์ธ ์์ ๋ด๋น
์คํ์ผ
โช ๋ฏธ๋ฆฌ ์ฝ์ํ ์คํ์ผ ์์ฑ์ ์
๋ ฅํด ์น์ ๋์์ธํ๋ ๊ฒ
โช ์คํ์ผ๋ค์ ๋ชจ์ ๋์ ๊ฒ์ '์คํ์ผ ์ํธ'๋ผ๊ณ ๋ถ๋ฆ
์ ํ์
โช ์คํ์ผ ์์ฑ์ ์ ์ฉํ๋ ์์
โช ์ ์ฒด, ํ๊ทธ, ํด๋์ค, id, ๊ทธ๋ฃน ์ ํ์ ๋ฑ
์บ์ค์บ์ด๋ฉ
โช CSS์ 'C'์ธ ์บ์ค์บ์ด๋ฉ(Cascading)์ ์ ํ์์ ์ ์ฉ๋ ๋ง์ ์คํ์ผ ์ค ์ด๋ค ์คํ์ผ์ ๋ํ๋ผ์ง ๊ฒฐ์ ํจ์ ๋ปํจ
โช ์ค๋ณต๋ ์คํ์ผ์ ์คํ์ผ ์ฐ์ ์์ - ์คํ์ผ ์์์ ๋ ๊ฐ์ง ์์น์ ๋ฐ๋ผ ์ ์ฉ
โช HTML ๋ฌธ์์์ ์์ฃผ ์ฌ์ฉํ๋ ๊ธ๊ผด์ด๋ ์์, ์ ๋ ฌ, ๊ฐ ์์๋ค์ ๋ฐฐ์น ๋ฐฉ๋ฒ ๋ฑ ๋ฌธ์์ ๊ฒ๋ชจ์ต์ ๊ฒฐ์ ์ง๋ ๋ด์ฉ
โ ์น ๋ฌธ์์ ๋ด์ฉ๊ณผ ์๊ด์์ด ๋์์ธ๋ง ๋ฐ๊ฟ ์ ์๋ค.
โ ๋ค์ํ ๊ธฐ๊ธฐ์ ๋ง๊ฒ ํ๋ ฅ์ ์ผ๋ก ๋ฐ๋๋ ๋ฌธ์๋ฅผ ๋ง๋ค ์ ์๋ค.
1) ์คํ์ผ ํ์, ํ๊ธฐ๋ฒ, ์ฃผ์
โช ์ค๊ดํธ ์์ ๋ค์ด๊ฐ๋ ์์ฑ๊ณผ ์์ฑ๊ฐ์ ์ฝ๋ก (:), ์์ฑ๊ณผ ์์ฑ๊ฐ ์ ๋ค์์ ์ธ๋ฏธ์ฝ๋ก (;)์ผ๋ก ๊ตฌ๋ถํ๋ค.
โช ๊ณต๋ฐฑ์ ์ํฅ์ ์ฃผ์ง ์๊ธฐ์ ์ํฉ์ ๋ง๊ฒ ํ์ฉํ๋ ๊ฒ์ด ์ข๋ค.
โช ์ฃผ์์ /๊ณผ / ์ฌ์ด์ ๋ด์ฉ์ ์
๋ ฅํ์ฌ ๋ํ๋ธ๋ค.
<๊ธฐ๋ณธํ>
์ ํ์ {์คํ์ผ ์์ฑ: ์์ฑ ๊ฐ;}
<์์>
h2 { font-size: 20px; color: orange; } /* 2๋จ๊ณ ์ ๋ชฉ์ ๊ธ์ ํฌ๊ธฐ 20px, ๊ธ์ ์ฃผํฉ์ */
p {
color: blue;
} /* ํ
์คํธ ๋จ๋ฝ์ ๊ธ์ ์ ํ๋์ */
2) ์คํ์ผ & ์คํ์ผ ์ํธ
โช ๋ด๋ถ ์คํ์ผ ์ํธ
โ ๋ฌธ์ ์์์ ์ฌ์ฉํ ์คํ์ผ ๊ท์น๋ค์ ์ ์
โ <head> ํ๊ทธ์ </head>`` ํ๊ทธ ์์์ ```ํ๊ทธ๋ฅผ ์์ฑํด ๊ทธ ์ฌ์ด์ ์์ฑํ๋ค.
๋ด๋ถ ์คํ์ผ ์ํธ ์์
<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> section { width: 400px; /*๋๋น*/ padding: 15px; /* ํ ๋๋ฆฌ์ ๋ด์ฉ ์ฌ์ด์ ์ฌ๋ฐฑ */ border: 5px solid gray; /*ํ ๋๋ฆฌ ์คํ์ผ*/ } </style> </head> <body> <div id="container"> <!-- ์๊ธฐ์๊ฐ --> <section> <h2>Who am I?</h2> <p>๋ฐฑ์๋ ๋ฐ ํ๋ฐํธ์๋ ์น ๊ธฐ์ ์ ๊ด์ฌ์ด ๋ง์ต๋๋ค.<br> ํ์ฌ ์์ธ์ ํ ํธ๋์ด ๋ง์์์ ์ฝ๋ฉ์ค์ ๋๋ค. </p> </section> </div> </body>โป ์น ๋ธ๋ผ์ฐ์ ์ถ๋ ฅ ๊ฒฐ๊ณผ
โช ์ธ๋ถ ์คํ์ผ ์ํธ
โ ๋ณ๋์ ์คํ์ผ ํ์ผ์ ๋ง๋ค์ด ์ฐ๊ฒฐํด์ ์ฌ์ฉ
โ '.css' ํ์ผ ํ์ฅ์๋ฅผ ์ฌ์ฉํ๋ฉฐ <style> ํ๊ทธ ์์ด <link> ํ๊ทธ๋ง ์ฌ์ฉํด ์ฐ๊ฒฐํ๋ค.
<๊ธฐ๋ณธํ>
<link rel="stylesheet" href="์ธ๋ถ ์คํ์ผ ํ์ผ ๊ฒฝ๋ก">
์ธ๋ถ ์คํ์ผ ์ํธ ์์
1) style.css ์ธ๋ถ ์คํ์ผ ์ํธ ํ์ผ
section { width: 400px; padding: 15px; border: 5px cadetblue dashed; /* ์ ์ */ } h2 { color: seagreen; /* ๊ธ์์ */ } p { font-size: 0.9em; /* ๊ธ์ ํฌ๊ธฐ */ line-height: 2.0; /* ์ค๊ฐ๊ฒฉ */ }2) external.html ํ์ผ์ ์ธ๋ถ ์คํ์ผ ์ํธ ์ ์ฉ(style.css)
<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <link rel="stylesheet" href="style.css"> </head> <body> <div id="container"> <!-- ์๊ธฐ์๊ฐ --> <section> <h2>Who am I?</h2> <p>๋ฐฑ์๋ ๋ฐ ํ๋ฐํธ์๋ ์น ๊ธฐ์ ์ ๊ด์ฌ์ด ๋ง์ต๋๋ค.<br> ํ์ฌ ์์ธ์ ํ ํธ๋์ด ๋ง์์์ ์ฝ๋ฉ์ค์ ๋๋ค. </p> </section> </div> </body>โป ์น ๋ธ๋ผ์ฐ์ ์ถ๋ ฅ ๊ฒฐ๊ณผ
1) ์ ์ฒด ์ ํ์
โช ๋ชจ๋ ํ์ ์์์ ํ๊บผ๋ฒ์ ์คํ์ผ์ ์ ์ฉํ ๋ ์ฌ์ฉํ๋ฉฐ, *(๋ณํ)๋ฅผ ์ฌ์ฉํ๋ค.
โ ๋ฌธ์์ ์ฌ๋ฐฑ์ด๋ ๊ธ๊ผด ํฌ๊ธฐ ๋ฑ ๊ธฐ๋ณธ ์คํ์ผ์ ์ด๊ธฐํํ ๋ ์ฌ์ฉํ๋ค.
<๊ธฐ๋ณธํ>
* {์์ฑ: ์์ฑ ๊ฐ; ์์ฑ: ์์ฑ ๊ฐ; ... }
2) ํ๊ทธ ์ ํ์
โช ํน์ ํ๊ทธ๋ฅผ ์ฌ์ฉํ ์์์ ์คํ์ผ ์ ์ฉ
<๊ธฐ๋ณธํ>
ํ๊ทธ { ์คํ์ผ }
<์์>
p {
font-size: 12px;
font-family: ๋์;
}
3) ํด๋์ค ์ ํ์
โช ํน์ ๋ถ๋ถ์ ์คํ์ผ ์ ์ฉ
โ ๊ฐ์ ํ๊ทธ๋ผ๋ ๋ค๋ฅธ ์คํ์ผ์ ์ ์ฉํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.
โ ํด๋์ค ์ด๋ฆ ์์๋ ๋ฐ๋์ ๋ง์นจํ(.)๋ฅผ ๋ถ์ฌ์ผ ํ๋ค.
<๊ธฐ๋ณธํ>
.ํด๋์ค๋ช
{ ์คํ์ผ }
<์์ 1 - ํด๋์ค ์คํ์ผ ์ ์ฉ>
<style>
.bluetext {
color: blue;
}
</style>
///
<h2 class="bluetext">ํด๋์ค ์ ํ์</h2>
<์์ 2 - ํ
์คํธ ์ผ๋ถ์๋ง ์ ์ฉ>
โช <span> ํ๊ทธ ์ฌ์ฉ
<style>
.bluetext {
color: blue;
}
</style>
///
<p>์ ์ฒด ํ
์คํธ ์ค <span class="bluetext">์ผ๋ถ</span>์๋ง ์ ์ฉ</p>
<์์ 3 - ์ ํ์ ์ ์ฉ ๋ฒ์ ์ ํ>
<style>
h2.bluetext {
color: blue;
}
</style>
///
<h2 class="accent">ํด๋์ค ์ ํ์ ์์ ํ๊ทธ ์ด๋ฆ์ ํจ๊ป ์จ์</h2>
<h2 class="blutext">ํน์ ํ๊ทธ์๋ง ํด๋์ค ์ ํ์๋ฅผ ์ ์ฉ</h2> /*ํด๋น ํ๊ทธ์๋ง ์คํ์ผ ์ ์ฉ*/
<์์ 4 - ๋ ์ด์์ ์คํ์ผ ๋์ ์ ์ฉ>
โช ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ
<style>
.bluetext {
color: blue;
}
.boldtext {
font-weight: bold;
}
</style>
///
<p>๋ ์ด์์ ์คํ์ผ <span class="bluetext boldtext">๋์</span> ์ ์ฉ</p>
4) id ์ ํ์
โช ์น ๋ฌธ์ ์์ ํน์ ๋ถ๋ถ์ ์คํ์ผ์ ์ง์ ํ ๋ ์ฌ์ฉํ๋ค.
โ ๋ง์นจํ(.) ๋์ # ๊ธฐํธ๋ฅผ ์ฌ์ฉํ๋ ์ ์ ์ ์ธํ๊ณ ํด๋์ค ์ ํ์์ ์ฌ์ฉ๋ฒ์ ๊ฐ๋ค.
โ ๊ทธ๋ฌ๋, id ์ ํ์๋ ๋ฌธ์ ์์์ ์ค๋ณต์์ด ํ ๋ฒ๋ง ์ ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ ์ฃผ๋ก ๋ฌธ์์ ๋ ์ด์์๊ณผ ๊ด๋ จ๋ ์คํ์ผ์ ์ง์ ํ ๋ ์ฌ์ฉํ๋ค.
<๊ธฐ๋ณธํ>
#์์ด๋๋ช
{ ์คํ์ผ }
<์์>
<style>
#container {
width:600px; /*๋๋น*/
padding:15px; /*ํ
๋๋ฆฌ์ ๋ด์ฉ ์ฌ์ด์ ์ฌ๋ฐฑ*/
border:1px dotted gray; /*ํ
๋๋ฆฌ ์คํ์ผ*/
} /*๋ฌธ์๋ฅผ ์ค์์ ๋ฐฐ์นํ๊ณ ์ ์ ํ
๋๋ฆฌ๋ฅผ ๊ทธ๋ฆฌ๋๋ก ์คํ์ผ ์ ์*/
</style>
///
<div id="container">
<h1>ํ์ฌ ์๊ฐ</h1>
...
5) ๊ทธ๋ฃน ์ ํ์
โช ๋ ์ด์ ์์์ ๊ฐ์ ์คํ์ผ ์ ์ฉ
โ ์ ํ์๋ฅผ ์ผํ(,)๋ก ๊ตฌ๋ถํ์ฌ ๋์ดํ ํ ์คํ์ผ์ ํ๋ฒ๋ง ์ ์ํ๋ค.
<์์>
h1, h2 {
text-align:center;
}
โช ์คํ์ผ์ด ๋์์ ์ ์ฉ๋ ๊ฒฝ์ฐ ์คํ์ผ ๊ฐ์ ์ถฉ๋์ ๋ง๊ธฐ ์ํ ์์น
โ ์์์ ์๋๋ก ํ๋ฅด๋ฉฐ ์ ์ฉ
1) ์คํ์ผ ์ฐ์ ์์
โช ์คํ์ผ ๊ท์น์ ์ค์๋, ์ ์ฉ ๋ฒ์์ ๋ฐ๋ผ ์ฐ์ ์์๊ฐ ๊ฒฐ์ ๋๋ฉฐ ๊ทธ ์ฐ์ ์์์ ๋ฐ๋ผ ์์์ ์๋๋ก ์ ์ฉ๋๋ค.
<์ค์๋ - Importance> - !importance๋ฅผ ๋ถ์ฌ ์ค์๋ ํ์
โ ์ฌ์ฉ์ ์คํ์ผ ์ํธ์ ์ค์ ์คํ์ผ
โก ์ ์์ ์คํ์ผ ์ํธ์ ์ค์ ์คํ์ผ
โข ์ ์์ ์คํ์ผ ์ํธ์ ์ผ๋ฐ ์คํ์ผ
โฃ ๊ธฐ๋ณธ์ ์ธ ๋ธ๋ผ์ฐ์ ์คํ์ผ ์ํธ
<์ ์ฉ ๋ฒ์ - Specificity>
โ ์ธ๋ผ์ธ ์คํ์ผ
โก id ์คํ์ผ
โข ํด๋์ค ์คํ์ผ
โฃ ํ๊ทธ ์คํ์ผ
โ ์คํ์ผ ์ํธ์์ ์ค์๋์ ์ ์ฉ ๋ฒ์๊ฐ ๊ฐ๋ค๋ฉด ์คํ์ผ ์ฐ์ ์์๋ฅผ ์ ํ๋ ๊ฒ์ ์์ค์ ์์์ด๋ค.
์ฆ, ์์ค์์ ๋์ค์ ์จ ์คํ์ผ์ด ๋จผ์ ์จ ์คํ์ผ์ ๋ฎ์ด์ด๋ค.
์คํ์ผ ์ฐ์ ์์ ์์ ์์
<style> body { color: skyblue; /*๋ฌธ์ ์ ์ฒด ๊ธ์ ์*/ } h2 { color:brown !important; /*๊ธ์ ์, ์ค์ ์คํ์ผ ์ง์ */ } </style> /// <body> <h2 style="color: green;">์ถ์...</h2> /*์ค์ ์คํ์ผ ์ ์ฉ*/ <p>๋ฌ๊ฑ์ด๋ค...</p> <p>๋ง์๊ฒ ๊ฐ์ฌํ ๋จน๊ฒ ์ต๋๋ค</p> <p style="color: red; font-style: italic;">๋ ๋ </p> /*์ธ๋ผ์ธ ์คํ์ผ ์ ์ฉ*/ </body>โป ์น ๋ธ๋ผ์ฐ์ ์ถ๋ ฅ ๊ฒฐ๊ณผ
2) ์คํ์ผ ์์
โช ํ๊ทธ๋ค์ ํฌํจ ๊ด๊ณ์ ๋ฐ๋ผ ๋ถ๋ชจ ์์์ ์คํ์ผ์ ์์ ์์๋ก, ์์์ ์๋๋ก ์ ๋ฌํ๋ค.
โ ์คํ์ผ ์ํธ์์๋ ์์ ์์์์ ๋ณ๋๋ก ์คํ์ผ์ ์ง์ ํ์ง ์์ผ๋ฉด ๋ถ๋ชจ ์์์ ์๋ ์คํ์ผ ์์ฑ๋ค์ด ์์ ์์๋ก ์ ๋ฌ๋๋ค.
โ๋จ, ๋ถ๋ชจ ์์์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ ๋ฐฐ๊ฒฝ์์ ์์ ์์์ ์์๋์ง ์๋๋ค.โ
(๊ธฐ๋ณธ๊ฐ์ธ 'ํฌ๋ช
'์ผ๋ก ์ง์ ๋์ด ์์๋ ๊ฒ์ฒ๋ผ ๋ฐฐ๊ฒฝ์ด ๋ณด์ธ๋ค.)
์คํ์ผ ์์ ์์
<style> body { color: skyblue; background-color: gray; } h2 { font-size: 20px; color: greenyellow; } </style> /// <body> <h1>CSS</h1> <h2>์น ๋ฌธ์์ ๋์์ธ๊ณผ ๋ด์ฉ์ ๋ถ๋ฆฌํ๋ค.</h2> <p>์น ํ์ค์ ์ํ ์น ๋ฌธ์๋ ๋์์ธ๊ณผ ๋ด์ฉ์ด ๋ถ๋ฆฌ๋๋ค.</p> <p>๋ด์ฉ์ HTML์ ์ด์ฉํด ๊ตฌ์ฑํ๊ณ , ๋์์ธ์ CSS๋ฅผ ์ด์ฉํด ๊พธ๋ฏผ๋ค.</p> </body>โป ์น ๋ธ๋ผ์ฐ์ ์ถ๋ ฅ ๊ฒฐ๊ณผ
โช HTML5์ '5'์ฒ๋ผ CSS3์ '3'๋ ๋ฒ์ ํ๊ธฐ๋ฅผ ๋์ด ์น ํ์ค ๊ธฐ์ ์ ํต์ฌ์ ์ง์นญํ๋ ์ฉ์ด๊ฐ ๋์๋ค.
โ ๊ทธ๋ฌ๋ CSS3๋ ์ต์ CSS ๋ชจ๋๋ค์ ํ๊บผ๋ฒ์ ๋ฌถ์ ๊ฒ์ผ๋ก ๊ณ์ ๋ณํ๊ณ ์๋ก์ด CSS๋ชจ๋๋ค์ด ๋ฑ์ฅํ๊ณ ์๋ค.