브레드크럼 내비게이션이란?
브레드크럼(Breadcrumb) 내비게이션은 사용자가 현재 보고 있는 페이지가 웹사이트의 계층 구조에서 어느 위치에 해당하는지 한눈에 보여주는 탐색 요소입니다. 주로 페이지 상단에 배치되며, 각 메뉴 항목 사이에 슬래시(/)와 같은 구분 기호를 넣어 이동 경로를 시각적으로 표현합니다.
다음은 CSS만을 활용하여 브레드크럼 내비게이션을 구현한 예제 코드입니다.
예제
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
body {
margin: 0px;
margin-top: 10px;
padding: 0px;
}
.breadcrumb {
background-color: rgb(39, 39, 39);
overflow: auto;
height: auto;
}
li {
display: inline-block;
text-align: center;
padding: 10px;
font-size: 17px;
}
.links {
text-decoration: none;
color: rgb(178, 137, 253);
}
.links:hover {
text-decoration: underline;
}
.breadcrumb ul li:before {
padding: 8px;
color: white;
content: "/\00a0";
text-decoration: none;
}
ul:last-child {
color: white;
font-weight: bolder;
font-family: monospace;
}
</style>
</head>
<body>
<h1>Breadcrumb Navigation Example</h1>
<div class="breadcrumb">
<ul>
<li><a class="links" href="#">Root</a></li>
<li><a class="links" href="#">Home</a></li>
<li><a class="links" href="#">User</a></li>
<li><a class="links" href="#">Desktop</a></li>
<li>Games</li>
</ul>
</div>
<h2>Hover over the links to see effect</h2>
</body>
</html>출력
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

코드 핵심 포인트
- .breadcrumb 클래스: 어두운 배경색을 적용하고
overflow: auto로 설정하여 콘텐츠가 영역을 벗어날 경우 자동으로 처리합니다. - li 요소:
display: inline-block을 사용해 목록 항목들을 가로 방향으로 나란히 정렬합니다. - ::before 가상 요소:
content속성에 슬래시와 공백(/\00a0) 값을 지정하여 각 항목 앞에 구분 기호를 자동으로 삽입합니다. 덕분에 별도의 마크업 추가 없이 경로 구조를 완성할 수 있습니다. - :hover 효과: 링크에 마우스를 올리면 밑줄이 표시되도록 하여 클릭 가능한 요소임을 사용자에게 직관적으로 알려줍니다.
이처럼 CSS의 가상 요소(::before)와 인라인 블록 레이아웃만 잘 활용하면 JavaScript 없이도 깔끔하고 실용적인 브레드크럼 내비게이션을 손쉽게 구현할 수 있습니다.