
부트스트랩(Bootstrap)은 트위터 개발자들이 만든 프론트엔드 개발용 오픈소스 프레임워크로, 웹 페이지와 웹 애플리케이션의 UI(User Interface)를 빠르고 쉽게 개발할 수 있도록 도와줍니다. HTML, CSS, JavaScript로 구성되어 있으며, 반응형 디자인과 재사용 가능한 컴포넌트를 제공합니다.
container와 row, col 클래스를 활용한 기본 구조.<div class="container">
<div class="row">
<div class="col">Header</div>
</div>
<div class="row">
<div class="col-6">Sidebar</div>
<div class="col-6">Content</div>
</div>
</div>btn, btn-primary 클래스를 사용한 버튼 스타일 통일.d-none, d-md-block을 사용해 특정 화면 크기에 따라 요소 숨기기/보이기.1. CDN 방식 (가장 간단한 방법)
HTML 파일에 다음 코드를 추가합니다:
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
2. NPM 설치
Node.js 환경에서 다음 명령어로 설치:
npm install bootstrap
3. 다운로드 방식
부트스트랩 공식 웹사이트에서 파일을 다운로드하고 프로젝트에 추가합니다. 저는 이 방법으로 진행해봤습니다. v5.3.3버전을 다운받아서 Zip파일에서 bootstrap.min.css 파일을 복사하여 스태틱 디렉터리에 저장해 보았습니다.
| 구분 | 파일 위치 |
|---|---|
| 압축 파일 내 경로 | bootstrap-5.3.1-dist.zip/bootstrap-5.3.1-dist/css/bootstrap.min.css |
| 붙여넣기할 폴더 경로 | workspace/sbb/src/main/resources/static/bootstrap.min.css |

그리고 html 템플릿에 밑의 코드로 부트스트랩을 <link></link>태그로 연결해주면 사용할 준비가 다 되었습니다.
<link rel="stylesheet" type="text/css" th:href="@{/bootstrap.min.css}">

<button type="button" class="btn btn-primary">Primary Button</button>
<div class="container">
<div class="row">
<div class="col">Column 1</div>
<div class="col">Column 2</div>
<div class="col">Column 3</div>
</div>
</div>
container, row, col 클래스를 사용해 반응형 레이아웃을 구성.<div class="container">
<div class="row">
<div class="col">Column 1</div>
<div class="col">Column 2</div>
<div class="col">Column 3</div>
</div>
</div>
버튼: btn, btn-primary, btn-danger 등 다양한 스타일과 크기의 버튼 제공.
<button type="button" class="btn btn-primary">Primary</button>
<button type="button" class="btn btn-danger">Danger</button> 
텍스트: text-center, text-muted.
배경: bg-light, bg-dark, bg-primary.
card 클래스를 사용해 콘텐츠를 카드 형식으로 표현.<div class="card" style="width: 18rem;">
<img src="https://via.placeholder.com/150" class="card-img-top" alt="...">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">Some quick example text.</p>
<a href="#" class="btn btn-primary">Go somewhere</a>
</div>
</div>navbar 클래스로 상단 메뉴 구성.<nav class="navbar navbar-expand-lg navbar-light bg-light">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
</ul>
</div>
</nav>불필요한 클래스 남발 방지
class="btn btn-primary btn-lg btn-block btn-custom" 대신 btn btn-primary btn-lg로 간결커스터마이징 과도화 주의
브라우저 호환성 확인
⚠️ 호환성 문제
버전 간 차이
- 부트스트랩 4에서 5로 업그레이드 시
form클래스와 같은 몇 가지 요소의 이름과 동작 방식이 변경되었습니다.- 예: 부트스트랩 4의
input-group-append는 5에서 더 이상 지원되지 않음.IE11 지원 중단
부트스트랩 5는 IE11을 지원하지 않으므로, 오래된 브라우저를 사용하는 환경에서는 부트스트랩 4를 사용하는 것이 좋습니다.커스텀 CSS와의 충돌
사용자 정의 스타일이 부트스트랩 클래스와 충돌할 경우, 의도치 않은 UI 문제가 발생할 수 있습니다. 이를 방지하려면 네임스페이스를 활용하거나 클래스 이름을 명확히 구분하세요.
최신 버전 사용
[Bootstrap] 10년차 프리랜서가 부트스트랩을 활용하는 방법
[Bootstrap] 부트스트랩 사용하기
[Bootstrap] 부트스트랩이란?