CSS๋ ๋ฌด์์ผ๊น?
Cascading Style Sheets์ ์ฝ์๋ก, HTML์ ๊พธ๋ฉฐ์ค ๋ ์ฌ์ฉํ๋ค.
CSS๋ฅผ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์๋
- ์ธ๋ผ์ธ : ํ๊ทธ์ style ์์ฑ์ ์ฌ์ฉํด์ css๋ฅผ ์ ์ฉํ๋ ๊ฒ
- ๋ด๋ถ ์คํ์ผ ์ํธ: head ํ๊ทธ ์์ styleํ๊ทธ๋ฅผ ์ฌ์ฉํด์ ์์ ์์ฑํ๋ ๊ฒ
- ์ธ๋ถ ์คํ์ผ ์ํธ: ๋ณ๋์ cssํ์ผ์ ์์ฑํ์ฌ linkํ๊ทธ๋ฅผ ํตํด ์ฐ๊ฒฐํ๋ ๊ฒ
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- ์ธ๋ถ ์คํ์ผ์ํธ ์ฐ๊ฒฐ -->
<link rel="stylesheet" href="./main.css">
<title>Document</title>
<!-- ๋ด๋ถ ์คํ์ผ์ํธ -->
<style>
/* ํด๋์ค ์ ํ์ */
.title {
background-color: pink;
}
/* ์์ด๋ ์ ํ์ */
#form-btn {
font-weight: 800;
}
</style>
</head>
<body>
<!-- ์ธ๋ผ์ธ CSS -->
<h1 class="title">CSS TEST</h1>
<input style="border: 1px solid black;" class="form-input" type="text">
<button id="form-btn">๋ฒํผ</button>
</body>
</html>
ํน์ ์์์ ์คํ์ผ์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ
๋ด๋ถ ์คํ์ผ ์ํธ, ์ธ๋ถ ์คํ์ผ ์ํธ ๋ชจ๋ ํน์ ์์์๋ง ์คํ์ผ์ ์ ์ฉํ ์ ์๋ค.
ํ๊ทธ ์ด๋ฆ, ํน์ ์ ํ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
ํด๋์ค ์ ํ์๋ .ํด๋์ค์ด๋ฆ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.
์์ด๋ ์ ํ์๋ #์์ด๋์ด๋ฆ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ ํ์์ ์ฐ์ ์์๋
- ์์ด๋
- ํด๋์ค
- ์์
์์ผ๋ก ๋๋ค
JavaScript
HTML์ ์ ์ดํ ์ ์๋ ์คํฌ๋ฆฝํธ ์ธ์ด์ด๋ค.
Node.js๋ฅผ ํตํด ์๋ฒ ๊ฐ๋ฐ์๋ ์ฐ์ด๊ธฐ ์์ํ๋ค.
JavaScript๋ฅผ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์๋
- ์ธ๋ผ์ธ : ํ๊ทธ์ ์์ฑ์ ์ฌ์ฉํด์ JavaScript ์ฝ๋๋ฅผ ์ ์ฉํ๋ ๊ฒ, ์ฌ์ฉ์์์ ์ํธ์์ฉ์ด ์์ ๋ ๊ฐ๋ฅํ๋ค
- ๋ด๋ถ ์คํฌ๋ฆฝํธ: scriptํ๊ทธ๋ฅผ ์ฌ์ฉํด์ html ์์ ์์ฑํ๋ ๊ฒ
- ์ธ๋ถ ์คํฌ๋ฆฝํธ: ๋ณ๋์ jsํ์ผ์ ์์ฑํ์ฌ scriptํ๊ทธ๋ฅผ ํตํด ์ฐ๊ฒฐํ๋ ๊ฒ
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- ์ธ๋ถ ์คํ์ผ์ํธ ์ฐ๊ฒฐ -->
<script src="./main.js" defer></script>
<title>Document</title>
</head>
<body>
<h1 class="title">JavaScript TEST</h1>
<input style="border: 1px solid black;" class="form-input" type="text">
<!-- ์ธ๋ผ์ธ์ผ๋ก ํด๋ฆญ ์ด๋ฒคํธ์ ๋ฐ์ํ ํจ์ ์์ฑ -->
<button onclick="alert('๋ฒํผ1')" id="form-btn">์ธ๋ผ์ธ</button>
<!-- scriptํ๊ทธ์ ์์ฑ๋ ํจ์๋ฅผ ํด๋ฆญ ์ด๋ฒคํธ์ ๋ฑ๋ก -->
<button onclick="handleBtn2Click()" id="form-btn2">๋ฒํผ2</button>
<script>
function handleBtn2Click() {
//์์๋ฅผ ๋ถ๋ฌ์์ ๊ฐ์ ์ถ๋ ฅ
const $input = document.querySelector('.form-input');
if ($input.value !== '')
alert(`${$input.value}`)
else alert('์ธํ๊ฐ์ด ์์ต๋๋ค.')
}
</script>
</body>
</html>
์กฐ๊ฑด๋ฌธ
์กฐ๊ฑด์ ๊ธฐ์ค์ผ๋ก ๋ถ๊ธฐ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ๋ ๊ฒ์ด ์กฐ๊ฑด๋ฌธ์ด๋ค
if๋ฌธ, switch๋ฌธ ๋ฑ์ด ์์ ์ ์๋ค.
function handleBtn2Click() {
//์์๋ฅผ ๋ถ๋ฌ์์ ๊ฐ์ ์ถ๋ ฅ
const $input = document.querySelector('.form-input');
if ($input.value !== '')
alert(`${$input.value}`)
else alert('์ธํ๊ฐ์ด ์์ต๋๋ค.')
}
์ด๋ฐ ์์ผ๋ก if else๊ตฌ๋ฌธ์ ์ฌ์ฉํด์
๊ฐ์ด ์กด์ฌํ ๊ฒฝ์ฐ์ ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ์ ๊ฐ๊ฐ ๋ค๋ฅธ ์ถ๋ ฅ๋ฌธ์ ์ถ๋ ฅํ ์ ์๋ค.
๋ณ์
๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ด๋ ๊ณต๊ฐ์ด๋ค.
๋ฐ์ดํฐ๋ ์์ํ์ ์ด ๋ ์๋ ์๊ณ ๊ฐ์ฒดํ์ ์ด ๋ ์๋ ์๋ค.
const $input = document.querySelector('.form-input');
$input์ด ๋ฐ๋ก ๋ณ์์ด๋ค.
๋ณ์๋ const์ let์ผ๋ก ์ ์ธํ ์ ์๋ค.
์ฐจ์ด์ ์ const๋ ์ฌํ ๋น์ด ๋ถ๊ฐ๋ฅํ๋ค๋ ์ ์ด๊ณ
let์ ์ฌํ ๋น์ด ๊ฐ๋ฅํ๋ค๋ ์ ์ด๋ค.
์ฌํ ๋น์ ๋ณ์์ ๋ถ์ฌ๋ ๊ฐ์ ๋ค๋ฅธ ๊ฒ์ผ๋ก ๋ณ๊ฒฝํ๋ ๊ฒ์ ์๋ฏธํ๋ค.
const a = 0;
let b = 0;
console.log(a, b);
//0, 0
// a = 3; <- ๋ถ๊ฐ๋ฅํ๋ค
b = 2;
console.log(b);
//2
const๋ ์ฌํ ๋น์ด ๋ถ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์ ์ธ ๋์์ ์ด๊ธฐํ๋ฅผ ํด์ผ ํ๋ค.
๋ง์ฝ ์ ์ธ๋ง ํ๊ณ ๊ฐ์ ์ด๊ธฐํ ํ์ง ์๋๋ค๋ฉด ์๋์ ๊ฐ์ ์๋ฌ๊ฐ ๋ฌ๋ค.
'๐ช๋ฐ๋ธ์ฝ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[6์ฃผ์ฐจ] ๋ฐ๋ธ์ฝ์ค 6์ฃผ์ฐจ ๋ณต์ต (0) | 2024.04.12 |
---|---|
[TIL]HTTP ๊ธฐ๋ณธ ์ ๋ฆฌ & REST API (0) | 2024.03.17 |
[Week1] Git ๋ช ๋ น์ด (0) | 2024.02.28 |
[Week1] ๋ฆฌ๋ ์ค ๋ช ๋ น์ด (3) | 2024.02.28 |
[Week1] ๋ฒ์ ๊ด๋ฆฌ ์์คํ (0) | 2024.02.28 |