π¨ Frontend/HTML & CSS
CSS β¨ Bootstrap(λΆνΈμ€νΈλ©)
kongmi
2023. 3. 21. 18:30
λΆνΈμ€νΈλ©?
- Twitterμμ κ°λ°ν HTML, CSS, JavaScriptλ‘ μ΄λ£¨μ΄μ§ μ€ν μμ€ νλ μμν¬ μ λλ€.
- μΉ νμ΄μ§ λ μ΄μμ, λ²νΌ, νΌ, νμ΄ν¬κ·ΈλνΌ λ±μ λ€μν UI μ»΄ν¬λνΈλ₯Ό μ½κ² ꡬνν μ μμ΅λλ€.
- λ°μν μΉ λμμΈμ μ§μνλ―λ‘ λͺ¨λ°μΌ κΈ°κΈ°μμλ μΉ νμ΄μ§κ° μ μ νκ² νμλ©λλ€.
- μ€ν μμ€λ‘ λ°°ν¬λμ΄ μμΌλ©°, 무λ£λ‘ μ¬μ©ν μ μμ΅λλ€.
- λΆνΈμ€νΈλ©μ μ΄μ©νλ©΄ λΉ λ₯΄κ³ μ½κ² κΉλνκ³ λͺ¨λν UIλ₯Ό λ§λ€ μ μμ΅λλ€.
νΉμ§
- λ°μν μΉ λμμΈ μ§μ : λͺ¨λ°μΌ κΈ°κΈ°μμλ μ μ νκ² μΉ νμ΄μ§κ° νμλλλ‘ λ°μν μΉ λμμΈμ μ§μν©λλ€.
- λ€μν UI μ»΄ν¬λνΈ : λ μ΄μμ, λ²νΌ, νΌ, νμ΄ν¬κ·ΈλνΌ λ± λ€μν UI μ»΄ν¬λνΈλ₯Ό μ 곡ν©λλ€.
- μ¬μ΄ μ¬μ©μ± : λ¬Έμμ μμ μ½λκ° νλΆνκ² μ 곡λμ΄, μ½κ² μ¬μ©ν μ μμ΅λλ€.
- ν¬λ‘μ€ λΈλΌμ°μ§ : λ€μν λΈλΌμ°μ μμ μΌκ΄λ λμμΈμ μ 곡νμ¬ ν¬λ‘μ€ λΈλΌμ°μ§μ μ§μν©λλ€.
- λ€μν ν λ§ : λ€μν ν λ§λ₯Ό μ 곡νμ¬, μ¬μ©μκ° μ μ ν λμμΈμ μ νν μ μμ΅λλ€.
- μ€ν μμ€ : μ€ν μμ€λ‘ λ°°ν¬λμ΄ μμΌλ©°, 무λ£λ‘ μ¬μ©ν μ μμ΅λλ€.
- 컀μ€ν°λ§μ΄μ§ κ°λ₯ : μ¬μ©μμ μ·¨ν₯μ λ§κ² μ»΄ν¬λνΈλ₯Ό μμ νκ±°λ, νμν μ»΄ν¬λνΈλ₯Ό μΆκ°ν μ μμ΅λλ€.
- κ²μ μμ§ μ΅μ ν(SEO) μ§μ : κ²μ μμ§ μ΅μ νλ₯Ό κ³ λ €νμ¬ μ½λλ₯Ό μμ±νμμ΅λλ€.
Bootstrap
κ°λ ₯νκ³ νμ₯ κ°λ₯νλ©° κΈ°λ₯μ΄ νλΆν νλ‘ νΈμλ ν΄ν·. Sassλ‘ λΉλ λ° μ»€μ€ν°λ§μ΄μ§νκ³ , μ¬μ λΉλλ 그리λ μμ€ν λ° κ΅¬μ± μμλ₯Ό νμ©νκ³ , κ°λ ₯ν JavaScript νλ¬κ·ΈμΈμΌλ‘ νλ‘μ νΈμ μκΈ°
getbootstrap.kr
μ 곡 μμ
- Grid System: μ μ°ν λ μ΄μμμ λ§λ€κΈ° μν 그리λ μμ€ν μ μ 곡ν©λλ€. μ΄λ₯Ό μ¬μ©νμ¬ μ½κ² λ€μν λλ°μ΄μ€μ λμνλ λ°μν μΉμ¬μ΄νΈλ₯Ό ꡬμΆν μ μμ΅λλ€.
- Typography: λ€μν κΈκΌ΄, ν μ€νΈ μ€νμΌ λ° ν μ€νΈ ν¨κ³Όλ₯Ό μ 곡ν©λλ€.
- Forms: νΌ μμλ₯Ό λμμΈνλλ° λμμ΄ λλ ν΄λμ€μ μ€νμΌμ μ 곡ν©λλ€.
- Buttons: λ²νΌμ λ§λλ λ° μ¬μ©λλ ν΄λμ€μ μ€νμΌμ μ 곡ν©λλ€.
- Navigation: λ€μν νμ λ©λ΄λ₯Ό λμμΈνλλ° λμμ΄ λλ ν΄λμ€μ μ€νμΌμ μ 곡ν©λλ€.
- Modal: λͺ¨λ¬ μ°½μ λμμΈνλλ° μ¬μ©λλ ν΄λμ€μ μ€νμΌμ μ 곡ν©λλ€.
- Alerts: λ€μν κ²½κ³ λ©μμ§λ₯Ό λμμΈνλλ° μ¬μ©λλ ν΄λμ€μ μ€νμΌμ μ 곡ν©λλ€.
- Icons: λ€μν μμ΄μ½ ν°νΈμ μμ΄μ½ ν΄λμ€λ₯Ό μ 곡ν©λλ€.
- Images: μ΄λ―Έμ§ ν¬κΈ° μ‘°μ , μν μ΄λ―Έμ§, μΈλ€μΌ λ±μ ν΄λμ€μ μ€νμΌμ μ 곡ν©λλ€.
- JavaScript plugins: μ¬λΌμ΄λμΌ, λͺ¨λ¬ μ°½, λλ‘λ€μ΄ λ©λ΄ λ±κ³Ό κ°μ μλ°μ€ν¬λ¦½νΈ νλ¬κ·ΈμΈμ μ 곡ν©λλ€.
μ¬μ© λ°©λ²
CSS μ μ©
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
JavaScript μ μ©
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>
λΉ λ₯Έ μμ
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap demo</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
</head>
<body>
<h1>Hello, world!</h1>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>
</body>
</html>
νμκ°μ νμ΄μ§ κ°λ¨ μμ
<!DOCTYPE html>
<html>
<head>
<title>νμκ°μ
νμ΄μ§</title>
<!-- λΆνΈμ€νΈλ© CDN μΆκ°νκΈ° -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
</head>
<body>
<div class="container">
<h1>νμκ°μ
</h1>
<form>
<div class="form-group">
<label for="inputName">μ΄λ¦</label>
<input type="text" class="form-control" id="inputName" placeholder="μ΄λ¦μ μ
λ ₯νμΈμ">
</div>
<div class="form-group">
<label for="inputEmail">μ΄λ©μΌ</label>
<input type="email" class="form-control" id="inputEmail" placeholder="μ΄λ©μΌμ μ
λ ₯νμΈμ">
</div>
<div class="form-group">
<label for="inputPassword">λΉλ°λ²νΈ</label>
<input type="password" class="form-control" id="inputPassword" placeholder="λΉλ°λ²νΈλ₯Ό μ
λ ₯νμΈμ">
</div>
<div class="form-group">
<label for="inputPassword2">λΉλ°λ²νΈ νμΈ</label>
<input type="password" class="form-control" id="inputPassword2" placeholder="λΉλ°λ²νΈλ₯Ό λ€μ μ
λ ₯νμΈμ">
</div>
<br>
<button type="submit" class="btn btn-primary">νμκ°μ
</button>
</form>
</div>
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"
integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4"
crossorigin="anonymous"></script>
</body>
</html>