1<!DOCTYPE html>
2<html lang="ko">
3<head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>λ°μν μΉ λμμΈ μμ </title>
7 <link rel="stylesheet" href="style.css">
8</head>
9<body>
10 <!-- λ€λΉκ²μ΄μ
-->
11 <nav class="navbar">
12 <div class="logo">ResponsiveDemo</div>
13 <button class="menu-toggle" id="menuToggle">β°</button>
14 <ul class="nav-links" id="navLinks">
15 <li><a href="#">Home</a></li>
16 <li><a href="#">About</a></li>
17 <li><a href="#">Services</a></li>
18 <li><a href="#">Portfolio</a></li>
19 <li><a href="#">Contact</a></li>
20 </ul>
21 </nav>
22
23 <main class="container">
24 <h1>λ°μν μΉ λμμΈ μμ </h1>
25 <p class="lead">μ°½ ν¬κΈ°λ₯Ό μ‘°μ νμ¬ λ μ΄μμ λ³νλ₯Ό νμΈνμΈμ.</p>
26
27 <!-- 1. λ―Έλμ΄ μΏΌλ¦¬ λΈλ μ΄ν¬ν¬μΈνΈ νμ -->
28 <section class="section">
29 <h2>1. νμ¬ λ·°ν¬νΈ ν¬κΈ°</h2>
30 <div class="viewport-indicator">
31 <span class="mobile">π± Mobile (< 576px)</span>
32 <span class="tablet">π± Tablet (576px - 768px)</span>
33 <span class="small-desktop">π» Small Desktop (768px - 992px)</span>
34 <span class="desktop">π₯οΈ Desktop (992px - 1200px)</span>
35 <span class="large">π₯οΈ Large (> 1200px)</span>
36 </div>
37 </section>
38
39 <!-- 2. λ°μν 그리λ -->
40 <section class="section">
41 <h2>2. λ°μν 그리λ</h2>
42 <div class="responsive-grid">
43 <div class="grid-item">1</div>
44 <div class="grid-item">2</div>
45 <div class="grid-item">3</div>
46 <div class="grid-item">4</div>
47 <div class="grid-item">5</div>
48 <div class="grid-item">6</div>
49 </div>
50 </section>
51
52 <!-- 3. λ°μν μΉ΄λ -->
53 <section class="section">
54 <h2>3. λ°μν μΉ΄λ λ μ΄μμ</h2>
55 <div class="card-grid">
56 <article class="card">
57 <div class="card-image">μ΄λ―Έμ§</div>
58 <div class="card-content">
59 <h3>μΉ΄λ μ λͺ© 1</h3>
60 <p>μΉ΄λ λ΄μ©μ΄ μ¬κΈ°μ λ€μ΄κ°λλ€. λ°μνμΌλ‘ λ μ΄μμμ΄ λ³κ²½λ©λλ€.</p>
61 <a href="#" class="btn">μμΈν</a>
62 </div>
63 </article>
64 <article class="card">
65 <div class="card-image">μ΄λ―Έμ§</div>
66 <div class="card-content">
67 <h3>μΉ΄λ μ λͺ© 2</h3>
68 <p>λ€μν νλ©΄ ν¬κΈ°μμ ν
μ€νΈν΄λ³΄μΈμ.</p>
69 <a href="#" class="btn">μμΈν</a>
70 </div>
71 </article>
72 <article class="card">
73 <div class="card-image">μ΄λ―Έμ§</div>
74 <div class="card-content">
75 <h3>μΉ΄λ μ λͺ© 3</h3>
76 <p>λͺ¨λ°μΌμμλ μΈλ‘λ‘, λ°μ€ν¬νμμλ κ°λ‘λ‘ λ°°μΉλ©λλ€.</p>
77 <a href="#" class="btn">μμΈν</a>
78 </div>
79 </article>
80 </div>
81 </section>
82
83 <!-- 4. λ°μν νμ΄ν¬κ·ΈλνΌ -->
84 <section class="section">
85 <h2>4. λ°μν νμ΄ν¬κ·ΈλνΌ</h2>
86 <h1 class="responsive-heading">λ°μν μ λͺ©</h1>
87 <p class="responsive-text">
88 μ΄ ν
μ€νΈμ ν¬κΈ°λ λ·°ν¬νΈ λλΉμ λ°λΌ μλμΌλ‘ μ‘°μ λ©λλ€.
89 <code>clamp()</code> ν¨μλ₯Ό μ¬μ©νλ©΄ μ΅μκ°, μ νΈκ°, μ΅λκ°μ μ€μ ν μ μμ΅λλ€.
90 </p>
91 </section>
92
93 <!-- 5. λ°μν μ΄λ―Έμ§ -->
94 <section class="section">
95 <h2>5. λ°μν μ΄λ―Έμ§</h2>
96 <div class="image-container">
97 <img src="https://via.placeholder.com/1200x600"
98 alt="λ°μν μ΄λ―Έμ§"
99 class="responsive-image">
100 <p class="caption">max-width: 100%λ‘ μ»¨ν
μ΄λμ λ§κ² μ‘°μ λ©λλ€.</p>
101 </div>
102 </section>
103
104 <!-- 6. λ°μν ν
μ΄λΈ -->
105 <section class="section">
106 <h2>6. λ°μν ν
μ΄λΈ</h2>
107 <div class="table-container">
108 <table class="responsive-table">
109 <thead>
110 <tr>
111 <th>μ΄λ¦</th>
112 <th>μ΄λ©μΌ</th>
113 <th>μ νλ²νΈ</th>
114 <th>μ£Όμ</th>
115 <th>κ°μ
μΌ</th>
116 </tr>
117 </thead>
118 <tbody>
119 <tr>
120 <td data-label="μ΄λ¦">νκΈΈλ</td>
121 <td data-label="μ΄λ©μΌ">hong@example.com</td>
122 <td data-label="μ νλ²νΈ">010-1234-5678</td>
123 <td data-label="μ£Όμ">μμΈμ κ°λ¨κ΅¬</td>
124 <td data-label="κ°μ
μΌ">2024-01-15</td>
125 </tr>
126 <tr>
127 <td data-label="μ΄λ¦">κΉμ² μ</td>
128 <td data-label="μ΄λ©μΌ">kim@example.com</td>
129 <td data-label="μ νλ²νΈ">010-2345-6789</td>
130 <td data-label="μ£Όμ">μμΈμ μμ΄κ΅¬</td>
131 <td data-label="κ°μ
μΌ">2024-01-20</td>
132 </tr>
133 <tr>
134 <td data-label="μ΄λ¦">μ΄μν¬</td>
135 <td data-label="μ΄λ©μΌ">lee@example.com</td>
136 <td data-label="μ νλ²νΈ">010-3456-7890</td>
137 <td data-label="μ£Όμ">μμΈμ μ‘νꡬ</td>
138 <td data-label="κ°μ
μΌ">2024-02-01</td>
139 </tr>
140 </tbody>
141 </table>
142 </div>
143 </section>
144
145 <!-- 7. λ°μν νΌ -->
146 <section class="section">
147 <h2>7. λ°μν νΌ</h2>
148 <form class="responsive-form">
149 <div class="form-row">
150 <div class="form-group">
151 <label for="firstName">μ΄λ¦</label>
152 <input type="text" id="firstName" placeholder="μ΄λ¦">
153 </div>
154 <div class="form-group">
155 <label for="lastName">μ±</label>
156 <input type="text" id="lastName" placeholder="μ±">
157 </div>
158 </div>
159 <div class="form-group">
160 <label for="email">μ΄λ©μΌ</label>
161 <input type="email" id="email" placeholder="example@domain.com">
162 </div>
163 <div class="form-group">
164 <label for="message">λ©μμ§</label>
165 <textarea id="message" rows="4" placeholder="λ©μμ§λ₯Ό μ
λ ₯νμΈμ"></textarea>
166 </div>
167 <button type="submit" class="btn btn-primary">μ μ‘</button>
168 </form>
169 </section>
170
171 <!-- 8. λ―Έλμ΄ μΏΌλ¦¬ μμ μ½λ -->
172 <section class="section">
173 <h2>8. λ―Έλμ΄ μΏΌλ¦¬ μμ μ½λ</h2>
174 <pre><code>/* Mobile First μ κ·Όλ² */
175
176/* κΈ°λ³Έ (λͺ¨λ°μΌ) μ€νμΌ */
177.container {
178 padding: 10px;
179}
180
181/* νλΈλ¦Ώ (576px μ΄μ) */
182@media (min-width: 576px) {
183 .container {
184 padding: 20px;
185 }
186}
187
188/* μμ λ°μ€ν¬ν (768px μ΄μ) */
189@media (min-width: 768px) {
190 .container {
191 max-width: 720px;
192 margin: 0 auto;
193 }
194}
195
196/* λ°μ€ν¬ν (992px μ΄μ) */
197@media (min-width: 992px) {
198 .container {
199 max-width: 960px;
200 }
201}
202
203/* ν° νλ©΄ (1200px μ΄μ) */
204@media (min-width: 1200px) {
205 .container {
206 max-width: 1140px;
207 }
208}</code></pre>
209 </section>
210 </main>
211
212 <!-- νΈν° -->
213 <footer class="footer">
214 <div class="footer-content">
215 <div class="footer-section">
216 <h3>About</h3>
217 <p>λ°μν μΉ λμμΈ νμ΅ μμ μ
λλ€.</p>
218 </div>
219 <div class="footer-section">
220 <h3>Links</h3>
221 <ul>
222 <li><a href="#">Privacy Policy</a></li>
223 <li><a href="#">Terms of Service</a></li>
224 <li><a href="#">Contact</a></li>
225 </ul>
226 </div>
227 <div class="footer-section">
228 <h3>Follow Us</h3>
229 <div class="social-links">
230 <a href="#">π</a>
231 <a href="#">π¦</a>
232 <a href="#">π·</a>
233 </div>
234 </div>
235 </div>
236 <div class="footer-bottom">
237 <p>© 2024 λ°μν μΉ λμμΈ μμ </p>
238 </div>
239 </footer>
240
241 <script>
242 // λͺ¨λ°μΌ λ©λ΄ ν κΈ
243 document.getElementById('menuToggle').addEventListener('click', function() {
244 document.getElementById('navLinks').classList.toggle('active');
245 });
246 </script>
247</body>
248</html>