하나씩 차근차근
article thumbnail

이번 포스트에서는 모든 페이지에서 위쪽에 고정되어 있는 홈, 로그인 등의 메뉴를 보여주는 네비게이션바를 만듭니다.

 

네비게이션바

다음과 같이 layout.html 파일의 body 태그 안에 작성을 해줍니다.

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet">
	<title>Spring Boot Board</title>
</head>
<body>
	<nav class="navbar navbar-expand-lg navbar-light bg-light border-bottom">
	    <div class="container-fluid">
	        <a class="navbar-brand" href="/">Board</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>
	<th:block layout:fragment="content"></th:block>
</body>
</html>

layout.html 을 상속받는 모든 페이지에서 <nav></nav> 안의 내용들을 화면에 출력합니다.

다음으로 부트스트랩에서 자바스크립트를 사용하기 위해

아래 script 태그를 head 태그 안에 넣어줍니다.

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.bundle.min.js" integrity="sha384-w76AqPfDkMBDXo30jS1Sgez6pr3x5MlQ1ZAGC+nuZB+EYdgRZgiwxhTBTkF7CXvN" crossorigin="anonymous">
</script>

페이지에 접속해보면 다음과 같이 화면이 나옵니다.

위에서 추가한 자바스크립트 기능을 사용해서 부트스트랩은 navbar 를 반응형 웹페이지로 만들어서

작은 화면일 경우 아래와 같이 우측의 메뉴 버튼을 누르면 메뉴를 보여줍니다.

profile

하나씩 차근차근

@jeehwan_lee

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!