지금까지 배운 HTML5 시맨틱 태그와 CSS3 스타일링 기법을 종합하여 실제 동작하는 웹사이트의 전체 레이아웃 구성을 직접 제작해 봅니다.
1. 웹사이트 뼈대 구조 설계 (HTML)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>DAVHAVE 스튜디오</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<!-- 상단 헤더 & 메뉴 -->
<header class="site-header">
<div class="logo">DAV<span>HAVE</span></div>
<nav class="main-nav">
<a href="#">홈</a>
<a href="#">소개</a>
<a href="#">포트폴리오</a>
<a href="#">교육</a>
</nav>
</header>
<!-- 메인 본문 콘텐츠 -->
<main class="main-container">
<article class="content-body">
<h2>최신 웹 기술 스택 분석</h2>
<p>HTML5와 CSS3 Flexbox를 활용한 모던 웹페이지 구현...</p>
</article>
<aside class="sidebar">
<h3>카테고리</h3>
<ul>
<li>HTML5/CSS3</li>
<li>JavaScript</li>
</ul>
</aside>
</main>
<!-- 푸터 -->
<footer class="site-footer">
<p>© 2026 DAVHAVE. All rights reserved.</p>
</footer>
</body>
</html>
2. Flexbox 기반 CSS3 레이아웃 구성
/* 전역 초기화 */
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: sans-serif; line-height: 1.6; background: #0a0908; color: #f2ede4; }
/* 헤더 가로 정렬 */
.site-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1rem 2rem;
background: #16130f;
border-bottom: 1px solid rgba(242,237,228,0.1);
}
.main-nav a { color: #f2ede4; margin-left: 1.5rem; text-decoration: none; }
/* 본문 2단 레이아웃 (본문 + 사이드바) */
.main-container {
display: flex;
max-width: 1000px;
margin: 2rem auto;
gap: 2rem;
}
.content-body { flex: 3; background: #16130f; padding: 1.5rem; border-radius: 12px; }
.sidebar { flex: 1; background: #16130f; padding: 1.5rem; border-radius: 12px; }
/* 푸터 */
.site-footer { text-align: center; padding: 2rem; color: #9a8f80; border-top: 1px solid rgba(242,237,228,0.1); }
3. 웹사이트 개발 단계 요약
- 와이어프레임(Wireframe) 구상: 페이지의 구역 배치 설계.
- HTML 시맨틱 태그 골조 완성: 의미에 맞는 태그 배치.
- CSS 초기화 및 레이아웃 정렬: Flexbox를 활용한 위치 구성.
- 디테일 디자이닝: 색상, 폰트, 호버 효과(
:hover) 추가.
4. 자주 묻는 질문 (Q&A)
Q. 메인 콘텐츠와 사이드바의 비율을 동적으로 설정하려면 어떻게 하나요?
A. Flexbox의 flex: 3;과 flex: 1; 속성을 부여하면 비율이 3:1로 유지되면서 화면 크기에 따라 자동으로 동적 확장 및 축소가 일어납니다.