diff --git a/src/app.js b/src/app.js index 83eb191..1c1392d 100644 --- a/src/app.js +++ b/src/app.js @@ -1216,7 +1216,7 @@ const sectionContent = {

Utility-First Basics

Tailwind CSS uses small, single-purpose utility classes applied directly in HTML. Instead of writing .btn { background: blue; padding: 1rem; } in a stylesheet, you write class="bg-blue-500 p-4" on the element. Each class does exactly one thing, making styles predictable and composable.

This approach eliminates context-switching between HTML and CSS files. Common utilities include text-lg for font size, font-bold for weight, rounded for border radius, and shadow for box shadows. Hover states use the hover: prefix like hover:bg-blue-600.

- Start with Tailwind CSS Basics + Start with Tailwind CSS Basics Coming Soon
@@ -1236,7 +1236,7 @@ const sectionContent = {

Spacing & Sizing

Tailwind's spacing scale is consistent and memorable. The pattern is simple: p-4 means padding of 1rem (16px), p-2 is 0.5rem, p-8 is 2rem. The same numbers work for margin (m-4), gap (gap-4), and space utilities. Use directional variants like px-4 (horizontal) or pt-2 (top only).

Width and height follow patterns too: w-full for 100%, w-1/2 for 50%, w-64 for fixed 16rem, h-screen for viewport height. Combine max-w-xl with mx-auto for centered containers with maximum widths.

- Learn Tailwind Spacing & Sizing + Learn Tailwind Spacing & Sizing Coming Soon
@@ -1260,7 +1260,7 @@ const sectionContent = {

Flexbox & Grid

Tailwind's layout utilities map directly to CSS flexbox and grid. Enable flex with flex, then control direction (flex-row, flex-col), alignment (items-center, justify-between), and wrapping (flex-wrap). The gap-4 utility adds consistent spacing between items.

For grid layouts, use grid with column definitions like grid-cols-3 for three equal columns or grid-cols-[200px_1fr] for custom track sizes. The col-span-2 utility makes items span multiple columns.

- Build Layouts with Tailwind + Build Layouts with Tailwind Coming Soon
@@ -1286,7 +1286,7 @@ const sectionContent = {

Responsive Design

Tailwind uses mobile-first responsive prefixes. Unprefixed utilities apply to all screen sizes. Add sm: (640px+), md: (768px+), lg: (1024px+), or xl: (1280px+) prefixes to apply styles at specific breakpoints and above.

Build responsive layouts by starting with mobile styles, then adding larger-screen overrides. For example, flex-col md:flex-row stacks items vertically on mobile and horizontally on medium screens. Use hidden md:block to show/hide elements at different sizes.

- Tailwind Responsive Design + Tailwind Responsive Design Coming Soon
diff --git a/src/i18n.js b/src/i18n.js index a1d9fe3..5f33ede 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -132,6 +132,7 @@ const translations = { landingCssDesc: "Styling, layout, and animations", landingHtmlDesc: "Semantic markup and native elements", landingTailwindDesc: "Utility-first CSS framework", + comingSoon: "Coming Soon", landingCtaTitle: "Start Learning Today", landingCtaSub: "Free and open source. No account required. Progress saved locally.", landingCtaButton: "Begin Your Journey", @@ -282,6 +283,7 @@ const translations = { landingCssDesc: "Styling, Layout und Animationen", landingHtmlDesc: "Semantisches Markup und native Elemente", landingTailwindDesc: "Utility-first CSS-Framework", + comingSoon: "Bald verfügbar", landingCtaTitle: "Heute noch anfangen", landingCtaSub: "Kostenlos und Open Source. Kein Konto erforderlich. Fortschritt wird lokal gespeichert.", landingCtaButton: "Jetzt erste Schritte machen", @@ -432,6 +434,7 @@ const translations = { landingCssDesc: "Stylowanie, układy i animacje", landingHtmlDesc: "Semantyczne znaczniki i natywne elementy", landingTailwindDesc: "Framework CSS oparty na klasach utility", + comingSoon: "Wkrótce", landingCtaTitle: "Zacznij naukę już dziś", landingCtaSub: "Darmowe i open source. Bez konta. Postęp zapisywany lokalnie.", landingCtaButton: "Rozpocznij swoją podróż", @@ -584,6 +587,7 @@ const translations = { landingCssDesc: "Estilos, diseño y animaciones", landingHtmlDesc: "Marcado semántico y elementos nativos", landingTailwindDesc: "Framework CSS basado en utilidades", + comingSoon: "Próximamente", landingCtaTitle: "Empieza a aprender hoy", landingCtaSub: "Gratis y de código abierto. Sin cuenta requerida. Progreso guardado localmente.", landingCtaButton: "Comienza tu viaje", @@ -731,6 +735,7 @@ const translations = { landingCssDesc: "التنسيق والتخطيط والرسوم المتحركة", landingHtmlDesc: "الترميز الدلالي والعناصر الأصلية", landingTailwindDesc: "إطار CSS قائم على الأدوات", + comingSoon: "قريباً", landingCtaTitle: "ابدأ التعلم اليوم", landingCtaSub: "مجاني ومفتوح المصدر. لا حاجة لحساب. يُحفظ التقدم محليًا.", landingCtaButton: "ابدأ رحلتك", @@ -880,6 +885,7 @@ const translations = { landingCssDesc: "Стилізація, макети та анімації", landingHtmlDesc: "Семантична розмітка та нативні елементи", landingTailwindDesc: "CSS-фреймворк на основі утиліт", + comingSoon: "Незабаром", landingCtaTitle: "Почни вчитися сьогодні", landingCtaSub: "Безкоштовно та з відкритим кодом. Без реєстрації. Прогрес зберігається локально.", landingCtaButton: "Розпочни свою подорож", diff --git a/src/index.html b/src/index.html index d42885b..ab9cbc9 100644 --- a/src/index.html +++ b/src/index.html @@ -74,8 +74,7 @@ @@ -151,15 +150,12 @@

Semantic markup and native elements

- - +
diff --git a/src/main.css b/src/main.css index 38267f2..c2a0983 100644 --- a/src/main.css +++ b/src/main.css @@ -1742,6 +1742,45 @@ input:checked + .toggle-slider::before { font-weight: 500; } +.section-card-disabled { + cursor: not-allowed; + opacity: 0.7; + position: relative; +} + +.section-card-disabled:hover { + transform: none; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); +} + +.coming-soon-badge { + display: inline-block; + background: linear-gradient(135deg, #06b6d4, #0891b2); + color: white; + font-size: 0.65rem; + font-weight: 600; + padding: 3px 8px; + border-radius: 10px; + text-transform: uppercase; + letter-spacing: 0.5px; +} + +.section-card-disabled .coming-soon-badge { + position: absolute; + top: 12px; + right: 12px; +} + +.topic-link-disabled { + cursor: not-allowed; + opacity: 0.6; +} + +.topic-link-disabled .coming-soon-badge { + margin-left: 8px; + vertical-align: middle; +} + /* Landing About Section */ .landing-about { padding: 3rem 1rem;