다른 명령
새 문서: == 탑메뉴 만들기 == <source lang=js> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Top Menu Example</title> <style> body { margin: 0; font-family: Arial, sans-serif; } .top-menu { display: flex; justify-content: flex-end; background-color: #2c3e50; padding: 10px 20px; position: fixed; top: 0; width: 100%; z-index: 1000; } .menu-group { position: relative;... |
편집 요약 없음 |
||
1번째 줄: | 1번째 줄: | ||
== 탑메뉴 만들기 == | |||
<source lang=js> | <source lang=js> |
2025년 5월 26일 (월) 13:14 기준 최신판
탑메뉴 만들기
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Top Menu Example</title> <style> body { margin: 0; font-family: Arial, sans-serif; } .top-menu { display: flex; justify-content: flex-end; background-color: #2c3e50; padding: 10px 20px; position: fixed; top: 0; width: 100%; z-index: 1000; } .menu-group { position: relative; margin-left: 20px; } .menu-link { color: #ecf0f1; font-size: 16px; text-decoration: none; padding: 8px; display: inline-block; } .menu-link:hover { background-color: #34495e; border-radius: 5px; } .dropdown { display: none; position: absolute; right: 0; top: 40px; background-color: #fff; border: 1px solid #ccc; min-width: 150px; box-shadow: 0px 2px 5px rgba(0,0,0,0.2); z-index: 999; } .dropdown a { display: block; padding: 10px; color: #2c3e50; text-decoration: none; } .dropdown a:hover { background-color: #f1f1f1; } .menu-group:hover .dropdown { display: block; } .main { margin-top: 60px; padding: 20px; } </style> </head> <body> <div class="top-menu"> <div class="menu-group"> <a class="menu-link" href="#">User ▾</a> <div class="dropdown"> <a href="/login.html">Login</a> <a href="/register.html">Register</a> <a href="/profile.html">Profile</a> </div> </div> <div class="menu-group"> <a class="menu-link" href="#">Settings ▾</a> <div class="dropdown"> <a href="/preferences.html">Preferences</a> <a href="/notifications.html">Notifications</a> <a href="/privacy.html">Privacy</a> </div> </div> <div class="menu-group"> <a class="menu-link" href="#">Help ▾</a> <div class="dropdown"> <a href="/docs.html">Documentation</a> <a href="/support.html">Support</a> </div> </div> </div> <div class="main"> <h1>Welcome</h1> <p>This is your main content area. The top menu stays fixed at the top.</p> </div> </body> </html>
탑메뉴 + 접히는 사이드 바
<!DOCTYPE html> <html> <head> <title>Top Menu (Sub-menu) & 접히는 메뉴 Sidebar</title> <style> body { font-family: sans-serif; margin: 0; padding: 0; display: flex; } /* Top Menu 스타일 */ .top-menu { background-color: #333; color: white; padding: 15px; display: flex; justify-content: space-around; /* 3개 메뉴 균등 배치 */ align-items: center; width: 100%; position: fixed; top: 0; z-index: 100; } .top-menu-item { position: relative; } .top-menu-link { color: white; text-decoration: none; padding: 10px 15px; display: block; } .top-menu-link:hover { background-color: #555; } .sub-menu { list-style: none; padding: 0; margin: 0; background-color: #444; position: absolute; top: 100%; left: 0; width: 150px; border: 1px solid #555; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); display: none; /* 초기 숨김 */ z-index: 101; } .top-menu-item:hover .sub-menu { display: block; /* 호버 시 표시 */ } .sub-menu li a { color: white; padding: 10px 15px; text-decoration: none; display: block; } .sub-menu li a:hover { background-color: #666; } .toggle-button { background: none; border: none; color: white; font-size: 1.2em; cursor: pointer; padding: 5px 10px; position: absolute; left: 10px; /* 왼쪽 상단에 위치 */ top: 15px; } .top-menu-title { font-size: 1.5em; margin: 0 auto; /* 가운데 정렬 */ } /* Sidebar 스타일 */ .sidebar { background-color: #f4f4f4; width: 250px; height: 100vh; position: fixed; top: 60px; /* Top menu 높이만큼 아래로 */ left: 0; overflow-x: hidden; padding-top: 20px; transition: 0.3s; } .sidebar.collapsed { width: 0; } .sidebar-menu { list-style: none; padding: 0; margin: 0; } .sidebar-menu-item { border-bottom: 1px solid #ddd; } .sidebar-menu-item:last-child { border-bottom: none; } .sidebar-menu-link { display: block; padding: 15px 25px; text-decoration: none; color: #333; transition: 0.3s; } .sidebar-menu-link:hover { background-color: #ddd; } /* Content 스타일 */ .content { flex-grow: 1; padding: 20px; margin-top: 60px; /* Top menu 높이만큼 아래로 */ margin-left: 250px; /* Sidebar 기본 너비만큼 오른쪽으로 */ transition: margin-left 0.3s; } .content.collapsed { margin-left: 0; } </style> </head> <body> <div class="top-menu"> <button class="toggle-button" onclick="toggleSidebar()">☰</button> <h1 class="top-menu-title">나의 웹사이트</h1> <div class="top-menu-item"> <a href="#" class="top-menu-link">메뉴 1</a> <ul class="sub-menu"> <li><a href="#">서브 메뉴 1-1</a></li> <li><a href="#">서브 메뉴 1-2</a></li> </ul> </div> <div class="top-menu-item"> <a href="#" class="top-menu-link">메뉴 2</a> <ul class="sub-menu"> <li><a href="#">서브 메뉴 2-1</a></li> <li><a href="#">서브 메뉴 2-2</a></li> <li><a href="#">서브 메뉴 2-3</a></li> </ul> </div> <div class="top-menu-item"> <a href="#" class="top-menu-link">메뉴 3</a> <ul class="sub-menu"> <li><a href="#">서브 메뉴 3-1</a></li> </ul> </div> </div> <div class="sidebar" id="sidebar"> <ul class="sidebar-menu"> <li class="sidebar-menu-item"> <a href="#" class="sidebar-menu-link">메뉴 A</a> </li> <li class="sidebar-menu-item"> <a href="#" class="sidebar-menu-link">메뉴 B</a> </li> <li class="sidebar-menu-item"> <a href="#" class="sidebar-menu-link">메뉴 C</a> </li> <li class="sidebar-menu-item"> <a href="#" class="sidebar-menu-link">메뉴 D</a> </li> </ul> </div> <div class="content" id="content"> <h2>본문 내용</h2> <p>이곳은 실제 웹사이트의 내용이 표시될 영역입니다. 왼쪽 사이드바를 접거나 펼쳐서 레이아웃 변화를 확인할 수 있습니다.</p> <p>추가적인 내용...</p> </div> <script> function toggleSidebar() { const sidebar = document.getElementById("sidebar"); const content = document.getElementById("content"); sidebar.classList.toggle("collapsed"); content.classList.toggle("collapsed"); } </script> </body> </html>