스프링 부트 3-01로 이동

목표: 내비게이션 바 만들기
1. 내비게이션 바
내비게이션 바는 모든 페이지에 공통이어야 하므로 다음과 같이 layout.html 템플릿에 추가해야 합니다.
(파일 이름: /sbb/src/main/resources/templates/layout.html)
<!doctype html>
<html lang="ko">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" type="text/css" th:href="http://2-juhyun-2.m/@{/bootstrap.min.css}">
<!-- sbb CSS -->
<link rel="stylesheet" type="text/css" th:href="@{/style.css}">
<title>Hello, sbb!</title>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-light bg-light border-bottom">
<div class="container-fluid">
<a class="navbar-brand" href="http://2-juhyun-2.">SBB</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link" href="#">로그인</a>
</li>
</ul>
</div>
</div>
</nav>
<!-- 기본 템플릿 안에 삽입될 내용 Start -->
<th:block layout:fragment="content"></th:block>
<!-- 기본 템플릿 안에 삽입될 내용 End -->
</body>
</html>
“SBB” 로고는 맨 왼쪽에 배치되어 항상 홈 페이지로 이동하며 오른쪽에는 “로그인” 링크가 추가됩니다.
이제 질문 목록을 요청하면 화면 상단에 다음 탐색 표시줄이 표시됩니다.

내비게이션 바에서 SBB 로고를 누르면 어디에서나 메인 페이지로 돌아갈 수 있습니다.
작동하는지 확인하려면 SBB 로고를 클릭하십시오.
부트스트랩 탐색 모음에는 흥미로운 기능이 숨겨져 있습니다.
아무 페이지나 접속하고 마우스를 이용하여 웹브라우저의 크기를 점차 줄여보자.
결국 햄버거 메뉴 버튼이 나타납니다.
그리고 “로그인” 링크가 사라집니다.

부트스트랩은 브라우저 크기가 줄어들면 탐색 모음의 링크를 작은 햄버거 메뉴 버튼으로 숨깁니다.
(부트스트랩의 반응형 웹 기능입니다.)
숨겨진 “로그인” 링크를 보려면 메뉴 버튼을 클릭해야 합니다.
하지만 여전히 메뉴 버튼을 클릭해도 아무 일도 일어나지 않습니다.
이는 layout.html 파일에 Bootstrap JavaScript 파일(bootstrap.min.js)이 포함되어 있지 않기 때문입니다.
Bootstrap JavaScript 파일은 다운로드한 bootstrap-5.2.3-dist.zip 압축 파일에 이미 있으므로 다음 위치에 복사합니다.
- 압축 파일의 경로: bootstrap-5.2.3-dist.zip/bootstrap-5.2.3-dist/js/bootstrap.min.js
- 삽입 위치: /sbb/src/main/resources/static/bootstrap.min.js
즉, 어떻게 /sbb/src/main/resources/static 디렉토리 아래 bootstrap.min.js 파일을 찾아야 합니다.
이제 추가된 JavaScript 파일을 사용할 수 있도록 layout.html의 맨 아래에 있습니다.
