Zum Inhalt
r/ rittek uiDOCS

RITTEK BLOCKS / Panels & Zustände

Panels & Zustände. Direkt einsetzbar.

Eigenständige Bausteine für HTML und PHP. Jedes Beispiel hat seinen vollständigen Quellcode direkt darunter. Farben, Hell/Dunkel, Dichte und Schrift folgen deiner Docs-Ansicht.

Interaktionen bleiben lokale Demos. Formulare senden keine Nachrichten; es gibt keine Zahlung oder Server-Synchronisation. Beim mehrfachen Einfügen IDs eindeutig vergeben und den jeweiligen Initialisierer einmal nach dem Markup aufrufen.

Panels & Zustände

Projekttabs · Horizontal

Drei zugeordnete Panels, Pfeiltasten, Home/End und logisch gespiegelte horizontale Steuerung. Ohne JavaScript bleiben alle Inhalte zugänglich.

Vollständiges HTML herunterladen ↧

Workspace / Einstellungen

Projekttabs · Horizontal

Ein klarer Überblick.

Das Kundenportal bündelt Inhalte, Aufgaben und Rückmeldungen. Alle Angaben sind fiktiv.

Menschen hinter dem Projekt.

Mara · Gestaltung / Robin · Entwicklung / Alex · Redaktion

Der nächste Meilenstein.

Briefing abgeschlossen. Entwurf in Prüfung. Veröffentlichung noch offen.

HTML · inklusive Stylesheets und Modul-Einbindung
<!doctype html>
<html lang="de" data-theme="light">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Projekttabs · Horizontal · Rittek UI</title>
<link rel="stylesheet" href="https://ui.rittek.de/assets/rittek.css">
<link rel="stylesheet" href="https://ui.rittek.de/assets/blocks-patterns.css">
</head>
<body data-r-scheme="lime" data-r-size="standard" data-r-font="standard">
<section class="bp-block" id="bp-tabs-horizontal" data-bp-tabs="horizontal" aria-labelledby="bp-tabs-horizontal-title">
<p class="bp-eyebrow">Workspace / Einstellungen</p>
<h3 class="bp-title" id="bp-tabs-horizontal-title">Projekttabs · Horizontal</h3>
<div class="bp-horizontal">
<div class="bp-tablist" data-bp-tablist aria-label="Projektbereiche">
<button class="r-button" type="button" id="bp-tabs-horizontal-tab-0" aria-controls="bp-tabs-horizontal-panel-0" data-bp-tab>Überblick</button>
<button class="r-button" type="button" id="bp-tabs-horizontal-tab-1" aria-controls="bp-tabs-horizontal-panel-1" data-bp-tab>Team</button>
<button class="r-button" type="button" id="bp-tabs-horizontal-tab-2" aria-controls="bp-tabs-horizontal-panel-2" data-bp-tab>Verlauf</button>
</div>
<div>
<section class="bp-panel" id="bp-tabs-horizontal-panel-0" aria-labelledby="bp-tabs-horizontal-tab-0" data-bp-panel>
<h4>Ein klarer Überblick.</h4>
<p>Das Kundenportal bündelt Inhalte, Aufgaben und Rückmeldungen. Alle Angaben sind fiktiv.</p>
</section>
<section class="bp-panel" id="bp-tabs-horizontal-panel-1" aria-labelledby="bp-tabs-horizontal-tab-1" data-bp-panel>
<h4>Menschen hinter dem Projekt.</h4>
<p>Mara · Gestaltung / Robin · Entwicklung / Alex · Redaktion</p>
</section>
<section class="bp-panel" id="bp-tabs-horizontal-panel-2" aria-labelledby="bp-tabs-horizontal-tab-2" data-bp-panel>
<h4>Der nächste Meilenstein.</h4>
<p>Briefing abgeschlossen. Entwurf in Prüfung. Veröffentlichung noch offen.</p>
</section>
</div>
</div>
</section>
<script type="module">
import {initPatternBlocks} from 'https://ui.rittek.de/assets/modules/blocks-patterns.js';
const cleanup = initPatternBlocks(document.getElementById('bp-tabs-horizontal'));
// Beim Entfernen der Ansicht: cleanup();
</script>
</body>
</html>

Panels & Zustände

Projekttabs · Vertikal

Drei zugeordnete Panels, Pfeiltasten, Home/End und logisch gespiegelte horizontale Steuerung. Ohne JavaScript bleiben alle Inhalte zugänglich.

Vollständiges HTML herunterladen ↧

Workspace / Einstellungen

Projekttabs · Vertikal

Ein klarer Überblick.

Das Kundenportal bündelt Inhalte, Aufgaben und Rückmeldungen. Alle Angaben sind fiktiv.

Menschen hinter dem Projekt.

Mara · Gestaltung / Robin · Entwicklung / Alex · Redaktion

Der nächste Meilenstein.

Briefing abgeschlossen. Entwurf in Prüfung. Veröffentlichung noch offen.

HTML · inklusive Stylesheets und Modul-Einbindung
<!doctype html>
<html lang="de" data-theme="light">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Projekttabs · Vertikal · Rittek UI</title>
<link rel="stylesheet" href="https://ui.rittek.de/assets/rittek.css">
<link rel="stylesheet" href="https://ui.rittek.de/assets/blocks-patterns.css">
</head>
<body data-r-scheme="lime" data-r-size="standard" data-r-font="standard">
<section class="bp-block" id="bp-tabs-vertical" data-bp-tabs="vertical" aria-labelledby="bp-tabs-vertical-title">
<p class="bp-eyebrow">Workspace / Einstellungen</p>
<h3 class="bp-title" id="bp-tabs-vertical-title">Projekttabs · Vertikal</h3>
<div class="bp-vertical">
<div class="bp-tablist" data-bp-tablist aria-label="Projektbereiche">
<button class="r-button" type="button" id="bp-tabs-vertical-tab-0" aria-controls="bp-tabs-vertical-panel-0" data-bp-tab>Überblick</button>
<button class="r-button" type="button" id="bp-tabs-vertical-tab-1" aria-controls="bp-tabs-vertical-panel-1" data-bp-tab>Team</button>
<button class="r-button" type="button" id="bp-tabs-vertical-tab-2" aria-controls="bp-tabs-vertical-panel-2" data-bp-tab>Verlauf</button>
</div>
<div>
<section class="bp-panel" id="bp-tabs-vertical-panel-0" aria-labelledby="bp-tabs-vertical-tab-0" data-bp-panel>
<h4>Ein klarer Überblick.</h4>
<p>Das Kundenportal bündelt Inhalte, Aufgaben und Rückmeldungen. Alle Angaben sind fiktiv.</p>
</section>
<section class="bp-panel" id="bp-tabs-vertical-panel-1" aria-labelledby="bp-tabs-vertical-tab-1" data-bp-panel>
<h4>Menschen hinter dem Projekt.</h4>
<p>Mara · Gestaltung / Robin · Entwicklung / Alex · Redaktion</p>
</section>
<section class="bp-panel" id="bp-tabs-vertical-panel-2" aria-labelledby="bp-tabs-vertical-tab-2" data-bp-panel>
<h4>Der nächste Meilenstein.</h4>
<p>Briefing abgeschlossen. Entwurf in Prüfung. Veröffentlichung noch offen.</p>
</section>
</div>
</div>
</section>
<script type="module">
import {initPatternBlocks} from 'https://ui.rittek.de/assets/modules/blocks-patterns.js';
const cleanup = initPatternBlocks(document.getElementById('bp-tabs-vertical'));
// Beim Entfernen der Ansicht: cleanup();
</script>
</body>
</html>

Panels & Zustände

Antworten · Exklusives Accordion

Native Details mit beliebig langen Antworten. Mit Modul bleibt nur ein Abschnitt geöffnet; ohne Modul ist jeder Abschnitt einzeln bedienbar.

Vollständiges HTML herunterladen ↧

Wissen / Grundlagen

Gute Fragen. Klare Antworten.

Wie werden Farben übernommen?

Die Blöcke nutzen dieselben semantischen Farbvariablen wie das Framework. Ein Wechsel des Schemas ändert die Gestaltung der gesamten Ansicht.

Bleibt kompakte Darstellung lesbar?

Dichte und Schriftgröße sind voneinander unabhängig. Auch in XS können Texte normal groß bleiben. Lange Antworten bleiben vollständig sichtbar.

Funktioniert der Inhalt ohne JavaScript?

Native Details lassen sich auch ohne das optionale Modul öffnen und schließen. Das Modul ergänzt die exklusive Öffnung dieser Variante.

HTML · inklusive Stylesheets und Modul-Einbindung
<!doctype html>
<html lang="de" data-theme="light">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Antworten · Exklusives Accordion · Rittek UI</title>
<link rel="stylesheet" href="https://ui.rittek.de/assets/rittek.css">
<link rel="stylesheet" href="https://ui.rittek.de/assets/blocks-patterns.css">
</head>
<body data-r-scheme="lime" data-r-size="standard" data-r-font="standard">
<section id="bp-accordion" class="bp-block" data-bp-accordion="single" aria-labelledby="bp-accordion-title">
<p class="bp-eyebrow">Wissen / Grundlagen</p>
<h3 class="bp-title" id="bp-accordion-title">Gute Fragen. Klare Antworten.</h3>
<details class="bp-details">
<summary>Wie werden Farben übernommen?</summary>
<p>Die Blöcke nutzen dieselben semantischen Farbvariablen wie das Framework. Ein Wechsel des Schemas ändert die Gestaltung der gesamten Ansicht.</p>
</details>
<details class="bp-details">
<summary>Bleibt kompakte Darstellung lesbar?</summary>
<p>Dichte und Schriftgröße sind voneinander unabhängig. Auch in XS können Texte normal groß bleiben. Lange Antworten bleiben vollständig sichtbar.</p>
</details>
<details class="bp-details">
<summary>Funktioniert der Inhalt ohne JavaScript?</summary>
<p>Native Details lassen sich auch ohne das optionale Modul öffnen und schließen. Das Modul ergänzt die exklusive Öffnung dieser Variante.</p>
</details>
</section>
<script type="module">
import {initPatternBlocks} from 'https://ui.rittek.de/assets/modules/blocks-patterns.js';
const cleanup = initPatternBlocks(document.getElementById('bp-accordion'));
// Beim Entfernen der Ansicht: cleanup();
</script>
</body>
</html>

Panels & Zustände

Verzeichnis · Suche und Pagination

Lokale Suche und gekürzte Seitennavigation mit Anfang/Ende und aktuellem Zustand. Ein Suchwechsel beginnt auf Seite eins.

Vollständiges HTML herunterladen ↧

Workspace / Projektverzeichnis

Raum für neue Ideen.

  • KundenportalProjekt 01 · Demo
  • MarkenhandbuchProjekt 02 · Demo
  • ProduktkatalogProjekt 03 · Demo
  • TeamportalProjekt 04 · Demo
  • RedaktionsplanProjekt 05 · Demo
  • WissensdatenbankProjekt 06 · Demo
  • KampagnenseiteProjekt 07 · Demo
  • PartnerportalProjekt 08 · Demo
  • QuartalsberichtProjekt 09 · Demo
  • OnboardingProjekt 10 · Demo
  • ServiceportalProjekt 11 · Demo
  • DesignsystemProjekt 12 · Demo

Alle Projekte. Suchfunktion benötigt das optionale Modul.

HTML · inklusive Stylesheets und Modul-Einbindung
<!doctype html>
<html lang="de" data-theme="light">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Verzeichnis · Suche und Pagination · Rittek UI</title>
<link rel="stylesheet" href="https://ui.rittek.de/assets/rittek.css">
<link rel="stylesheet" href="https://ui.rittek.de/assets/blocks-patterns.css">
</head>
<body data-r-scheme="lime" data-r-size="standard" data-r-font="standard">
<section id="bp-pagination" class="bp-block" data-bp-pages aria-labelledby="bp-pagination-title">
<p class="bp-eyebrow">Workspace / Projektverzeichnis</p>
<h3 class="bp-title" id="bp-pagination-title">Raum für neue Ideen.</h3>
<label for="bp-search">Projekte suchen<input class="r-input" type="search" id="bp-search" placeholder="Zum Beispiel Portal">
</label>
<ul class="bp-records">
<li data-bp-record>
<strong>Kundenportal</strong>
<span>Projekt 01 · Demo</span>
</li>
<li data-bp-record>
<strong>Markenhandbuch</strong>
<span>Projekt 02 · Demo</span>
</li>
<li data-bp-record>
<strong>Produktkatalog</strong>
<span>Projekt 03 · Demo</span>
</li>
<li data-bp-record>
<strong>Teamportal</strong>
<span>Projekt 04 · Demo</span>
</li>
<li data-bp-record>
<strong>Redaktionsplan</strong>
<span>Projekt 05 · Demo</span>
</li>
<li data-bp-record>
<strong>Wissensdatenbank</strong>
<span>Projekt 06 · Demo</span>
</li>
<li data-bp-record>
<strong>Kampagnenseite</strong>
<span>Projekt 07 · Demo</span>
</li>
<li data-bp-record>
<strong>Partnerportal</strong>
<span>Projekt 08 · Demo</span>
</li>
<li data-bp-record>
<strong>Quartalsbericht</strong>
<span>Projekt 09 · Demo</span>
</li>
<li data-bp-record>
<strong>Onboarding</strong>
<span>Projekt 10 · Demo</span>
</li>
<li data-bp-record>
<strong>Serviceportal</strong>
<span>Projekt 11 · Demo</span>
</li>
<li data-bp-record>
<strong>Designsystem</strong>
<span>Projekt 12 · Demo</span>
</li>
</ul>
<nav class="bp-pagination" aria-label="Projektseiten">
<button type="button" class="r-button" data-bp-prev hidden>Zurück</button>
<div class="bp-pages" data-bp-page-list hidden>
</div>
<button type="button" class="r-button" data-bp-next hidden>Weiter</button>
</nav>
<p class="bp-status" role="status" data-bp-status>Alle Projekte. Suchfunktion benötigt das optionale Modul.</p>
</section>
<script type="module">
import {initPatternBlocks} from 'https://ui.rittek.de/assets/modules/blocks-patterns.js';
const cleanup = initPatternBlocks(document.getElementById('bp-pagination'));
// Beim Entfernen der Ansicht: cleanup();
</script>
</body>
</html>

Panels & Zustände

Ansichtszustände · Leer, Fehler und Erfolg

Vier bewusst auswählbare Zustände. Die Ladeansicht simuliert keinen Netzwerkfortschritt; Wiederholen stellt nur die lokale Vorschau um.

Vollständiges HTML herunterladen ↧

Interface / Zustände

Auch dazwischen verständlich.

Noch keine Einträge.

Beginne mit deinem ersten Projekt. Dies ist eine leere Beispielansicht.

Inhalte werden vorbereitet.

Statische Ladeansicht. Hier läuft keine Anfrage und kein künstlicher Fortschritt.

Die Ansicht ist nicht verfügbar.

Vorführung eines Fehlers. Deine Eingaben bleiben erhalten.

Alles bereit.

Die Beispielansicht ist wieder verfügbar. Keine Daten wurden übertragen.

Ohne Modul sind alle Beispielzustände sichtbar.

HTML · inklusive Stylesheets und Modul-Einbindung
<!doctype html>
<html lang="de" data-theme="light">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Ansichtszustände · Leer, Fehler und Erfolg · Rittek UI</title>
<link rel="stylesheet" href="https://ui.rittek.de/assets/rittek.css">
<link rel="stylesheet" href="https://ui.rittek.de/assets/blocks-patterns.css">
</head>
<body data-r-scheme="lime" data-r-size="standard" data-r-font="standard">
<section id="bp-states" class="bp-block" data-bp-state aria-labelledby="bp-states-title">
<p class="bp-eyebrow">Interface / Zustände</p>
<h3 class="bp-title" id="bp-states-title">Auch dazwischen verständlich.</h3>
<label for="bp-state-choice">Zustand vorführen<select id="bp-state-choice" class="r-input">
<option value="empty">Leer</option>
<option value="loading">Ladeansicht</option>
<option value="error">Fehler</option>
<option value="success">Erfolg</option>
</select>
</label>
<div class="bp-state" data-bp-view="empty">
<span class="bp-mark" aria-hidden="true">○</span>
<strong>Noch keine Einträge.</strong>
<p>Beginne mit deinem ersten Projekt. Dies ist eine leere Beispielansicht.</p>
</div>
<div class="bp-state" data-bp-view="loading">
<span class="bp-mark" aria-hidden="true">…</span>
<strong>Inhalte werden vorbereitet.</strong>
<p>Statische Ladeansicht. Hier läuft keine Anfrage und kein künstlicher Fortschritt.</p>
</div>
<div class="bp-state" data-bp-view="error">
<span class="bp-mark" aria-hidden="true">!</span>
<strong>Die Ansicht ist nicht verfügbar.</strong>
<p>Vorführung eines Fehlers. Deine Eingaben bleiben erhalten.</p>
<button type="button" class="r-button" data-bp-retry>Lokale Vorschau zurücksetzen</button>
</div>
<div class="bp-state" data-bp-view="success">
<span class="bp-mark" aria-hidden="true">✓</span>
<strong>Alles bereit.</strong>
<p>Die Beispielansicht ist wieder verfügbar. Keine Daten wurden übertragen.</p>
</div>
<p class="bp-status" role="status" data-bp-status>Ohne Modul sind alle Beispielzustände sichtbar.</p>
</section>
<script type="module">
import {initPatternBlocks} from 'https://ui.rittek.de/assets/modules/blocks-patterns.js';
const cleanup = initPatternBlocks(document.getElementById('bp-states'));
// Beim Entfernen der Ansicht: cleanup();
</script>
</body>
</html>