๊ธ๊ผด ์์ฑ (Font Properties)
ํ
์คํธ์ ๊ธฐ๋ณธ ์คํ์ผ์ ์ค์ ํฉ๋๋ค.
โข
์์ฃผ ์ฌ์ฉํ๋ ์์ฑ
โข
๊ธ๊ผด ์์ฑ ์ข
๋ฅ
โข
๊ธฐ๋ณธ ์์ ์ฝ๋
โข
ํฐํธ ์ง์ ํ๋ ๋ฐฉ๋ฒ
โฆ
์ธ๋ถ ํฐํธ
โฆ
ํ์ผ ํฐํธ
โฆ
๋ฉ์ธ ํฐํธ & ๊ฐ์กฐ ํฐํธ
์์ฃผ ์ฌ์ฉํ๋ ์์ฑ
์์ฑ | ์ค๋ช
| ์์ |
font-size | ๊ธ๊ผด์ ํฌ๊ธฐ๋ฅผ ์ง์ ํฉ๋๋ค.
-์ ๋๊ฐ(๋จ์: px, pt ๋ฑ)
-์๋๊ฐ(em, rem, %, vw ๋ฑ) | font-size: 16px;, font-size: 1.5rem; |
text-align | ํ
์คํธ์ ์ํ ์ ๋ ฌ์ ์ค์ ํฉ๋๋ค.
left, right, center, justify ๋ฑ ์ฌ์ฉ | text-align: center;, text-align: justify; |
font-family | ๊ธ๊ผด์ ์ง์ ํฉ๋๋ค.
์ฌ๋ฌ ๊ธ๊ผด์ ์ผํ๋ก ๊ตฌ๋ถํด ์์ฑํ๋ฉฐ,
์์คํ
๊ธฐ๋ณธ ๊ธ๊ผด๋ ์ค์ ๊ฐ๋ฅ. | font-family: Arial, sans-serif; |
๊ธ๊ผด ์์ฑ ์ข ๋ฅ
์์ฑ | ์ค๋ช
|
font-family | ๊ธ๊ผด ์ด๋ฆ์ ์ง์ ํฉ๋๋ค. ์ฌ๋ฌ ๊ธ๊ผด์ ์ผํ๋ก ๊ตฌ๋ถํ์ฌ ์ง์ ํ ์ ์์ผ๋ฉฐ, ์์คํ
๊ธฐ๋ณธ ๊ธ๊ผด๋ ์ค์ ๊ฐ๋ฅ. |
font-size | ๊ธ๊ผด์ ํฌ๊ธฐ๋ฅผ ์ง์ ํฉ๋๋ค. ์ ๋ ํฌ๊ธฐ(px), ์๋ ํฌ๊ธฐ(em, rem), ๋ฐฑ๋ถ์จ(%) ๋ฑ์ผ๋ก ์ค์ ํ ์ ์์ต๋๋ค. |
font-weight | ๊ธ๊ผด์ ๊ตต๊ธฐ๋ฅผ ์ง์ ํฉ๋๋ค. ๊ฐ์ผ๋ก normal, bold, ๋๋ 100๋ถํฐ 900๊น์ง์ ์ซ์๋ฅผ ์ฌ์ฉํฉ๋๋ค. |
font-style | ๊ธ๊ผด์ ์คํ์ผ์ ์ง์ ํฉ๋๋ค. normal, italic, oblique ๊ฐ์ด ์ฌ์ฉ๋ฉ๋๋ค. |
font-variant | ์์ ๋๋ฌธ์๋ก ๋ณํํ๋ ๋ฑ ํน์ํ ๊ธ๊ผด ๋ณํ์ ์ง์ ํฉ๋๋ค. normal, small-caps ๊ฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. |
line-height | ์ค ๊ฐ๊ฒฉ์ ์ง์ ํฉ๋๋ค. ์ซ์, ๋ฐฑ๋ถ์จ, ๋จ์(px, em) ๋ฑ์ ์ฌ์ฉํ์ฌ ์ค์ ํ ์ ์์ต๋๋ค. |
letter-spacing | ๊ธ์ ๊ฐ๊ฒฉ์ ์ง์ ํฉ๋๋ค. ์์๋ฅผ ์ฌ์ฉํ์ฌ ๊ธ์๋ฅผ ์ขํ๊ฑฐ๋ ์์๋ฅผ ์ฌ์ฉํ์ฌ ๋ํ ์ ์์ต๋๋ค. |
word-spacing | ๋จ์ด ๊ฐ ๊ฐ๊ฒฉ์ ์ง์ ํฉ๋๋ค. ์์์ ์์๋ฅผ ์ฌ์ฉํ์ฌ ์กฐ์ ํ ์ ์์ต๋๋ค. |
text-transform | ๊ธ์์ ๋์๋ฌธ์๋ฅผ ๋ณํํฉ๋๋ค. none, capitalize, uppercase, lowercase ๊ฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. |
text-align | ํ
์คํธ์ ์ ๋ ฌ์ ์ง์ ํฉ๋๋ค. left, right, center, justify ๊ฐ์ด ์ฌ์ฉ๋ฉ๋๋ค. |
๊ธฐ๋ณธ ์์ ์ฝ๋
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ํ
์คํธ ์คํ์ผ</title>
<style>
/* ๊ธฐ๋ณธ ํ
์คํธ ์คํ์ผ */
body {
/* ๊ธ๊ผด ์ง์ */
font-family: Arial, Helvetica, sans-serif;
/* ๊ธ๊ผด ํฌ๊ธฐ */
font-size: 16px;
/* ์ค ๊ฐ๊ฒฉ */
line-height: 1.8; /* px๋จ์, ๊ทธ๋ฅ์ซ์(๋ฐฐ์จ) */
/* ์์ */
color: #ff22ee;
}
h1 {
font-size: 32px;
/* ๊ธ๊ผด ๊ตต๊ธฐ */
font-weight: lighter;
/* (์์)100~900(๊ตต์) */
/* lighter, normal, bold, bolder */
}
p.bold {
font-weight: bold;
color: #22ffcc;
}
p.highlight {
/* ๊ธ๊ผด ์คํ์ผ */
font-style: italic; /* normal, oblique, italic */
color: red;
}
a {
/* ๊ธ๊ผด ์ฅ์ */
text-decoration: none;
/*
none(์์), underline(๋ฐ์ค)
overline(์์ค), line-through(์ทจ์์ )
*/
color: white;
background-color: black;
padding: 12px 24px;
border-radius: 5px;
}
/* :hover ๊ฐ์ ์ ํ์ - ๋ง์ฐ์ค ์ฌ๋ ธ์ ๋ ์ํ ์ ํ */
a:hover {
box-shadow: 5px 5px 5px rgba(0,0,0,0.2);
background-color: #222222;
}
</style>
</head>
<body>
<h1>ํ
์คํธ ์คํ์ผ ์ง์ ํ๊ธฐ</h1>
<p>ํ
์คํธ ์คํ์ผ์ ์ง์ ํ๋ ๋ฌธ์ฅ์
๋๋ค.</p>
<p class="bold">๊ฐ์กฐํ๋ ๋ฌธ์ฅ์
๋๋ค.</p>
<p class="highlight">์ค์ํ ๋ฌธ์ฅ์
๋๋ค.</p>
<a href="https://์ํด.com">Button</a>
</body>
</html>
HTML
๋ณต์ฌ
ํฐํธ ์ง์ ํ๋ ๋ฐฉ๋ฒ
โข
์ธ๋ถ ํฐํธ
โข
ํ์ผ ํฐํธ
โข
๋ฉ์ธ ํฐํธ & ๊ฐ์กฐ ํฐํธ
์ธ๋ถ ํฐํธ
PC ๋ด์ ํ์ผ ํฐํธ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์๋ CDN ๋ฐฉ์์ผ๋ก ํฐํธ ํ์ผ์ ๊ฐ์ ธ์ ์ฌ์ฉํ๋ ๋ฐฉ์
1.
CDN ํฐํธ ๋งํฌ ๊ฐ์ ธ์ค๊ธฐ
2.
<head> ํ๊ทธ ์์ CDN <link> ํ๊ทธ ํฌํจํ๊ธฐ
3.
<style> ์์ * ๋๋ body ๋ฅผ ์ ํํ์ฌ ์ ์ฒด ๊ธ๊ผด๋ก ์ง์ ํ๊ธฐ
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>์ธ๋ถ ํฌํผ ์ฌ์ฉํ๊ธฐ</title>
<!-- ํฐํธ ํฌํจํ๊ธฐ -->
<!-- CDN ๋ฐฉ์ ํฐํธ ์ฌ์ฉํ๊ธฐ -->
<link href="https://fonts.googleapis.com/css2?family=Gamja+Flower&display=swap" rel="stylesheet">
<style>
body {
font-family: "Gamja Flower", sans-serif;
font-weight: 400;
font-style: normal;
}
</style>
</head>
<body>
<h1>์ธ๋ถ ํฐํธ ์ฌ์ฉํ๊ธฐ</h1>
<h2>๊ตฌ๊ธ ํฐํธ</h2>
<ol>
<li>๊ตฌ๊ธ ํฐํธ ์ฌ์ดํธ ์ ์</li>
<li>ํฐํธ ์ ํ</li>
<li>link ํ๊ทธ ์์ฑ</li>
<li>font-family ์์ฑ ์ ์ฉ</li>
</ol>
</body>
</html>
HTML
๋ณต์ฌ
ํ์ผ ํฐํธ
.ttf, .otf .woff ํ์์ ํฐํธ ํ์ผ์ ํ๋ก์ ํธ ๋ด์ ํฌํจํ๊ณ CSS ์์ ๋ถ๋ฌ์ค๋ ๋ฐฉ์
1.
ํ๋ก์ ํธ ๋ด์ ํฐํธ ํ์ผ ์ค๋น
a.
fonts / font-name.ttf
2.
@font-face ์ฌ์ฉ์ ์ ์ ๊ธ๊ผด ์ ์ธ
@font-face {
font-family: "Gamja Flower";
src: url('fonts/GamjaFlower-Regular.ttf');
}
CSS
๋ณต์ฌ
fonts/GamjaFlower-Regular.ttf ํฐํธ ํ์ผ์ ๋ถ๋ฌ์, Gamja Flower ์ด๋ผ๋ ๊ธ๊ผด ์ด๋ฆ์ผ๋ก ์ ์ธ
3.
์ ์ธํ ๊ธ๊ผด ์คํ์ผ ์์ฑ์ผ๋ก ์ง์
body {
font-family: "Gamja Flower", sans-serif;
}
CSS
๋ณต์ฌ
@ (at-rule) [์ณ ๊ท์น] ์ด๋?
: CSS ์์ ํน๋ณํ ๊ท์น์ด๋ ์กฐ๊ฑด์ ์ ์ธํ๋ ๋ฌธ๋ฒ์
๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์๋์ ๋ด์ฉ๋ค์ ์ ์ํ๊ธฐ ์ํด์ ์ฌ์ฉํฉ๋๋ค.
์ฌ์ฉ์ ์ ์ ํฐํธ ์ค์ @font-face
์ ๋๋ฉ์ด์
ํคํ๋ ์ ์ ์ @keyframes
๋ฐ์ํ ์คํ์ผ ์ ์ฉ @media
At-rule | ์ค๋ช
| ์์ |
@import | ์ธ๋ถ CSS ํ์ผ์ ํ์ฌ ์คํ์ผ ์ํธ์ ๊ฐ์ ธ์ต๋๋ค. | @import url('style.css'); |
@media | ํน์ ๋ฏธ๋์ด ์กฐ๊ฑด(ํ๋ฉด ํฌ๊ธฐ, ํด์๋ ๋ฑ)์ ๋ฐ๋ผ ๋ค๋ฅธ ์คํ์ผ์ ์ ์ฉํฉ๋๋ค. | @media (max-width: 600px) { body { color: blue; } } |
@font-face | ์ฌ์ฉ์ ์ ์ ๊ธ๊ผด์ ๋ถ๋ฌ์์ ์ฌ์ฉํ ์ ์๋๋ก ์ ์ธํฉ๋๋ค. | @font-face { font-family: 'MyFont'; src: url('myfont.woff2'); } |
@keyframes | CSS ์ ๋๋ฉ์ด์
์ ํคํ๋ ์์ ์ ์ํฉ๋๋ค. | @keyframes slidein { from { left: 0; } to { left: 100%; } } |
@supports | ํน์ CSS ๊ธฐ๋ฅ์ ๋ธ๋ผ์ฐ์ ๊ฐ ์ง์ํ๋์ง ํ์ธํ์ฌ ์กฐ๊ฑด๋ถ๋ก ์คํ์ผ์ ์ ์ฉํฉ๋๋ค. | @supports (display: grid) { div { display: grid; } } |
@namespace | XML ๋ฌธ์์์ ๋ค์์คํ์ด์ค๋ฅผ ์ ์ธํ ๋ ์ฌ์ฉ๋ฉ๋๋ค. | @namespace svg url(http://www.w3.org/2000/svg); |
@charset | CSS ํ์ผ์ ๋ฌธ์ ์ธ์ฝ๋ฉ ๋ฐฉ์์ ์ ์ธํฉ๋๋ค. ํ์ผ์ ๊ฐ์ฅ ์ฒซ ์ค์ ์์นํด์ผ ํฉ๋๋ค. | @charset "UTF-8"; |
@page | ์ธ์ ๋ฏธ๋์ด์์ ํ์ด์ง ๋ ์ด์์์ ์ค์ ํ ๋ ์ฌ์ฉ๋ฉ๋๋ค. | @page { margin: 1cm; } |
@counter-style | ์ฌ์ฉ์ ์ ์ ๋ฆฌ์คํธ ํญ๋ชฉ ์คํ์ผ์ ์ ์ํฉ๋๋ค. | @counter-style mylist { system: numeric; } |
@document | ํน์ URL์ด๋ ๋๋ฉ์ธ์์๋ง ์คํ์ผ์ ์ ์ฉํ ๋ ์ฌ์ฉํฉ๋๋ค. (์ด ๊ท์น์ ๋นํ์ค์
๋๋ค.) | @document url("https://example.com") { ... } |
@viewport | ๋ทฐํฌํธ์ ํฌ๊ธฐ๋ฅผ ์ง์ ํฉ๋๋ค. ์ฃผ๋ก ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ์์ ์ฌ์ฉ๋ฉ๋๋ค. (์ด ๊ท์น์ ๋นํ์ค์
๋๋ค.) | @viewport { width: device-width; } |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
@font-face {
font-family: "Gamja Flower";
src: url('fonts/GamjaFlower-Regular.ttf');
}
body {
font-family: "Gamja Flower", sans-serif;
}
</style>
</head>
<body>
<h1>ํฐํธ ํ์ผ๋ก ๊ธ๊ผด ์ ์ฉํ๊ธฐ</h1>
<h3>ttf, otf, woff ๋ฑ ํฐํธํ์ผ ๋ค์ด๋ก๋ ๋ฐ ์ค๋น</h3>
<ol>
<li>ํฐํธ ํ์ผ ๋ค์ด๋ก๋</li>
<li>@font-face ์ src ์์ฑ ์ง์ </li>
<li>url() ํจ์๋ก ํฐํธํ์ผ ๊ฒฝ๋ก ์ง์ </li>
<li>font-family ์์ฑ์ผ๋ก ์คํ์ผ ์ง์ </li>
</ol>
</body>
</html>
HTML
๋ณต์ฌ
๋ฉ์ธ ํฐํธ & ๊ฐ์กฐ ํฐํธ
:root ์ ํ์๋ก ๋ฉ์ธ ํฐํธ์ ๊ฐ์กฐ ํฐํธ๋ฅผ ๋ณ์๋ก ์ ์ธํ์ฌ, ์ฌ์ฉํด๋ด
๋๋ค.
โข
:root ์ ํ์
โข
CSS ๋ณ์ ์ ์ธ
โข
CSS ๋ณ์ ์ฌ์ฉ
โข
๋ฉ์ธ ํฐํธ & ๊ฐ์กฐ ํฐํธ ์ฌ์ฉ ์์ ์ฝ๋
:root ์ ํ์
html ์์๋ฅผ ์ง์ ํ๋ ์ ํ์๋ก, html ํ๊ทธ ์ ํ์๋ณด๋ค ๋ ๋์ ์ฐ์ ์์๋ฅผ ๊ฐ๋ ์ ํ์
CSS ๋ณ์ ์ ์
์ ์ญ ์คํ์ผ ์ค์
CSS ์คํ์ผ ์ ์ฒด์์ ์ฌ์ฉํ ๋ณ์๋ฅผ ์ ์ธํ๊ฑฐ๋ ์ ์ญ ์คํ์ผ์ ์ ์ฉํ๊ธฐ ์ํด์ ์ฌ์ฉํฉ๋๋ค.
CSS ๋ณ์ ์ ์ธ
-- ๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ CSS ๋ณ์๋ฅผ ์ ์ธํฉ๋๋ค.
--๋ณ์๋ช
: ์์ฑ๊ฐ;
CSS
๋ณต์ฌ
:root {
--main-color: #3498db;
--main-font: 'Arial', sans-serif;
}
CSS
๋ณต์ฌ
CSS ๋ณ์ ์ฌ์ฉ
var() ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ์์ ๊ฐ์ ์ฌ์ฉํฉ๋๋ค.
์คํ์ผ์์ฑ : var(๋ณ์๋ช
);
CSS
๋ณต์ฌ
h1 {
color : var(--main-color);
}
CSS
๋ณต์ฌ
๋ฉ์ธ ํฐํธ & ๊ฐ์กฐ ํฐํธ ์ฌ์ฉ ์์ ์ฝ๋
1.
๋ณ์ ์ ์ธ
2.
๋ฉ์ธ ํฐํธ ์ ์ญ ํฐํธ ์ง์
3.
๊ฐ์กฐ ํฐํธ ํน์ ์์ ์ง์
๋ณ์ ์ ์ธ
:root {
--main-font: 'Arial', sans-serif; /* ๋ฉ์ธ ํฐํธ */
--highlight-font: 'Georgia', serif; /* ๊ฐ์กฐ ํฐํธ */
}
CSS
๋ณต์ฌ
๋ฉ์ธ ํฐํธ ์ ์ญ ํฐํธ ์ง์
html {
font-family: var(--main-font); /* ์ ์ฒด์ ๋ฉ์ธ ํฐํธ ์ ์ฉ */
}
CSS
๋ณต์ฌ
๊ฐ์กฐ ํฐํธ ํน์ ์์ ์ง์
h1, h2, .highlight {
font-family: var(--highlight-font); /* ํน์ ์์์ ๊ฐ์กฐ ํฐํธ ์ ์ฉ */
}
CSS
๋ณต์ฌ
โข
HTML
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="style.css">
<title>ํฐํธ ์์</title>
</head>
<body>
<h1>๊ฐ์กฐ ํฐํธ๊ฐ ์ ์ฉ๋ ์ ๋ชฉ์
๋๋ค</h1>
<p>์ด ๋ฌธ๋จ์ ๊ธฐ๋ณธ ํฐํธ๋ฅผ ์ฌ์ฉํฉ๋๋ค.</p>
<p class="highlight">์ด ํ
์คํธ๋ ๊ฐ์กฐ ํฐํธ๋ฅผ ์ฌ์ฉํฉ๋๋ค.</p>
</body>
</html>
HTML
๋ณต์ฌ
โข
CSS
:root {
--main-font: 'Roboto', sans-serif;
--highlight-font: 'Georgia', serif;
}
html {
font-family: var(--main-font); /* ์ ์ฒด์ ๋ฉ์ธ ํฐํธ ์ ์ฉ */
}
h1, h2, .highlight {
font-family: var(--highlight-font); /* ํค๋ฉ์ด๋ ํน์ ๊ฐ์กฐ ์์์ ๊ฐ์กฐ ํฐํธ ์ ์ฉ */
}
CSS
๋ณต์ฌ