- Absolute Einheiten (px) bleiben fix, relative Einheiten (%, em, rem) passen sich an Kontext oder Viewport an
- rem ist ideal für Typografie und Abstände, da es auf die Root-Schriftgröße referenziert
- Viewport-Einheiten (vw, vh) ermöglichen Layouts, die sich proportional zur Bildschirmgröße verhalten
- clamp() und calc() kombinieren verschiedene Einheiten für flexible, berechenbare Designs
- Die richtige Einheiten-Wahl verbessert Responsive Design, Performance und Accessibility
Du öffnest Elementor, stellst einen Abstand ein und fragst dich: Nehme ich jetzt 20px, 1.25rem oder doch 2%? Die Dropdown-Liste zeigt dir zehn verschiedene CSS-Einheiten, aber welche passt in welcher Situation? Diese Frage stellen sich täglich tausende Webdesigner.
Die Wahl der richtigen Einheit in Elementor ist keine Geschmackssache. Sie bestimmt, ob deine Website auf einem 27-Zoll-Monitor genauso gut aussieht wie auf einem Smartphone, ob Nutzer die Schriftgröße an ihre Bedürfnisse anpassen können und ob dein Layout unter allen Bedingungen stabil bleibt. Falsche Einheiten führen zu umbrechenden Layouts, unlesbarer Typografie oder horizontal scrollenden Mobile-Ansichten.
In diesem Guide lernst du jede einzelne CSS-Einheit in Elementor kennen: von klassischem px über relative Einheiten wie rem und em bis zu modernen Viewport-Einheiten und CSS-Funktionen wie clamp(). Du erfährst nicht nur die technischen Unterschiede, sondern bekommst konkrete Anwendungsempfehlungen für Typografie, Spacing, Container-Größen und responsive Layouts. Am Ende weißt du genau, welche Einheit in welcher Elementor-Komponente die beste Wahl ist.
1. Was sind CSS-Einheiten und warum sind sie in Elementor wichtig?
Jedes Mal, wenn du in Elementor eine Größenangabe eingibst, arbeitest du mit CSS-Einheiten. Sie definieren, wie groß ein Element dargestellt wird, wie viel Abstand es hat oder wie breit ein Container sein soll. Die Einheit bestimmt dabei nicht nur den numerischen Wert, sondern auch das Verhalten: Bleibt die Größe fix oder passt sie sich dynamisch an?
CSS-Einheiten lassen sich in zwei Hauptkategorien einteilen: absolute und relative Einheiten. Absolute Einheiten wie Pixel (px) bleiben immer gleich groß, unabhängig vom Kontext. Relative Einheiten wie Prozent (%) oder rem hingegen beziehen sich auf andere Werte und passen sich automatisch an.
Warum die Einheiten-Wahl über Erfolg oder Misserfolg entscheidet
Die Auswahl der richtigen Einheit hat direkten Einfluss auf drei zentrale Aspekte deiner Website: Responsive Design, Barrierefreiheit und Wartbarkeit. Eine Website, die ausschließlich mit Pixeln arbeitet, bricht auf kleinen Bildschirmen möglicherweise auseinander. Ein Layout mit ausschließlich relativen Einheiten kann bei extremen Viewport-Größen unvorhersehbar werden.
Moderne Webdesign-Standards fordern flexible Layouts, die sich an unterschiedliche Bildschirmgrößen, Orientierungen und Nutzerpräferenzen anpassen. Nutzer mit eingeschränkter Sehfähigkeit erhöhen oft die Browser-Schriftgröße. Websites, die mit fixen Pixelwerten arbeiten, ignorieren diese Einstellung. Websites mit rem-basierten Layouts respektieren die Nutzereinstellung und skalieren proportional mit.
Wie Elementor mit CSS-Einheiten arbeitet
Elementor bietet dir für fast jede Größenangabe ein Dropdown-Menü mit allen gängigen CSS-Einheiten. Du findest diese Auswahlmöglichkeit bei Schriftgrößen, Padding, Margin, Breiten, Höhen und vielen weiteren Eigenschaften. Die Standardeinstellung ist meist px, aber das bedeutet nicht, dass Pixel immer die beste Wahl ist.
Wenn du eine Einheit auswählst, schreibt Elementor den entsprechenden CSS-Code in dein Stylesheet. Der Browser interpretiert diesen Code und rendert das Element entsprechend. Die Einheit ist dabei Teil des CSS-Werts: font-size: 16px unterscheidet sich fundamental von font-size: 1rem, auch wenn beide initial dieselbe Größe darstellen können.

Der Unterschied zwischen absoluten und relativen Einheiten
Absolute Einheiten haben eine feste physikalische Größe. Ein Pixel (px) bleibt ein Pixel, unabhängig davon, wo es dargestellt wird. Das klingt zunächst verlässlich, bringt aber Nachteile: Auf hochauflösenden Displays wirken fixe Pixelwerte oft zu klein, auf kleinen Smartphones zu groß.
Relative Einheiten beziehen sich auf einen Referenzwert. Prozent (%) bezieht sich auf das Elternelement, rem auf die Root-Schriftgröße, vw auf die Viewport-Breite. Diese Flexibilität ermöglicht Layouts, die sich intelligent an verschiedene Kontexte anpassen. Eine Überschrift mit font-size: 2rem wird automatisch größer, wenn der Nutzer die Browser-Schriftgröße erhöht.
Die beste Lösung liegt oft in der Kombination: Verwende relative Einheiten für flexible Komponenten und absolute Einheiten dort, wo Präzision wichtiger ist als Flexibilität. Ein Icon mit fixer Größe funktioniert mit px hervorragend, während Fließtext von rem profitiert.
2. Pixel (px): Die absolute Einheit für präzise Kontrolle
Pixel ist die bekannteste und am häufigsten verwendete CSS-Einheit. Ein Pixel entspricht einem einzelnen Punkt auf dem Bildschirm. In Elementor ist px die Standardeinstellung für die meisten Größenangaben. Das macht sie zur ersten Wahl für Einsteiger, bringt aber auch Einschränkungen mit sich.
Der große Vorteil von Pixeln liegt in der absoluten Kontrolle. Wenn du einen Abstand von 24px definierst, weißt du genau, wie groß dieser Abstand sein wird. Pixel ignorieren alle externen Faktoren: Die Browser-Schriftgröße, die Viewport-Größe oder die Auflösung des Displays beeinflussen den Wert nicht. Für Elemente, die eine exakte Größe haben müssen, sind Pixel ideal.
Wann du Pixel in Elementor verwenden solltest
Pixel eignen sich hervorragend für Border, kleine Abstände und Icons. Ein Border von 1px bleibt immer 1px dünn, egal welche Schriftgröße der Nutzer eingestellt hat. Das sorgt für visuell konsistente Trennlinien und Rahmen. Auch bei Icon-Größen, die exakt mit anderen Elementen harmonieren sollen, bieten Pixel die nötige Präzision.
| Element-Typ | Empfohlene px-Werte | Anwendungsfall in Elementor |
|---|---|---|
| Border | 1px, 2px, 3px | Container-Rahmen, Trennlinien, Buttons |
| Box-Shadow | 0 2px 8px, 0 4px 12px | Card-Shadows, Hover-Effekte |
| Icon-Größe | 16px, 24px, 32px, 48px | Social Icons, Feature-Icons |
| Kleine Abstände | 4px, 8px | Button-Padding, Inline-Spacing |
| Border-Radius | 4px, 8px, 12px | Abgerundete Ecken bei Buttons, Cards |
Die Nachteile von Pixel-basierten Layouts
Pixel ignorieren Nutzerpräferenzen komplett. Wenn jemand in den Browser-Einstellungen die Schriftgröße auf 125% erhöht, bleiben pixelbasierte Schriftgrößen unverändert. Das schränkt die Barrierefreiheit erheblich ein. Menschen mit Sehbehinderungen sind auf skalierbare Schriftgrößen angewiesen.
| Aspekt | Pixel (px) | Relative Einheiten (rem) |
|---|---|---|
| Browser-Zoom berücksichtigt | Ja (wird mitskaliert) | Ja (wird mitskaliert) |
| Nutzer-Schriftgröße berücksichtigt | Nein (bleibt fix) | Ja (skaliert mit) |
| Responsive Anpassung | Manuell pro Breakpoint | Automatisch proportional |
| Barrierefreiheit | Eingeschränkt | Optimal |
| Wartbarkeit | Viele Breakpoint-Regeln nötig | Weniger Code nötig |
Auf verschiedenen Bildschirmgrößen führen fixe Pixelwerte oft zu Problemen. Eine Überschrift mit font-size: 48px sieht auf einem Desktop-Monitor perfekt aus, wirkt auf einem Smartphone mit 320px Breite aber überdimensioniert. Du müsstest für jeden Breakpoint manuelle Anpassungen vornehmen, was den Wartungsaufwand erhöht.

Pixel vs. geräteunabhängige Pixel
Moderne Displays mit hoher Pixeldichte (Retina, 4K) verwenden geräteunabhängige Pixel (device-independent pixels). Ein CSS-Pixel entspricht dabei mehreren physischen Pixeln. Ein iPhone mit Retina-Display hat eine Device Pixel Ratio von 2, das bedeutet: 1 CSS-Pixel = 4 physische Pixel (2×2). Das sorgt für scharfe Darstellung, ändert aber nichts an der grundsätzlichen Funktionsweise.
Für dich als Elementor-Nutzer bedeutet das: Du denkst in CSS-Pixeln, der Browser kümmert sich um die physische Darstellung. Eine Schriftgröße von 16px sieht auf allen Geräten ähnlich groß aus, auch wenn sie aus unterschiedlich vielen physischen Pixeln besteht.
Die Verwendung von Pixeln ist nicht grundsätzlich falsch. Für bestimmte Elemente sind sie sogar die beste Wahl. Problematisch wird es, wenn du dein gesamtes Layout ausschließlich mit Pixeln baust. Moderne Webstandards empfehlen einen hybriden Ansatz: Pixel für Details, relative Einheiten für flexible Komponenten. Eine professionelle Webdesign-Agentur kombiniert beide Ansätze strategisch für optimale Ergebnisse.
3. Prozent (%): Relative Größen basierend auf dem Elternelement
Die Prozent-Einheit ist eine der flexibelsten CSS-Einheiten in Elementor. Sie bezieht sich immer auf eine Eigenschaft des Elternelements. Bei Breiten und Höhen bedeutet width: 50%, dass das Element die Hälfte der Breite seines Containers einnimmt. Bei Schriftgrößen bezieht sich der Prozentwert auf die Schriftgröße des Elternelements.
Diese Relativität macht Prozent zur idealen Einheit für responsive Layouts. Ein Container mit width: 80% passt sich automatisch an die Breite seines Elternelements an. Auf einem Desktop-Monitor mit 1920px Breite wird er anders breit sein als auf einem Tablet mit 768px Breite. Du musst keine breakpoint-spezifischen Anpassungen vornehmen.
Prozent für Container und Layout-Strukturen
In Elementor verwendest du Prozent hauptsächlich für Container-Breiten und Grid-Layouts. Eine Section mit width: 100% füllt immer die gesamte verfügbare Breite aus. Spalten in einem Elementor-Layout arbeiten standardmäßig mit Prozentwerten: Drei gleichbreite Spalten haben jeweils width: 33.33%.
| Container-Breite (Eltern) | Element: 50% | Element: 80% | Element: 33.33% |
|---|---|---|---|
| 1920px (Desktop) | 960px | 1536px | 640px |
| 1366px (Laptop) | 683px | 1093px | 455px |
| 768px (Tablet) | 384px | 614px | 256px |
| 375px (Mobile) | 187.5px | 300px | 125px |
Für Padding und Margin kann Prozent ebenfalls sinnvoll sein, besonders bei horizontalen Abständen. Ein padding-left: 5% erzeugt einen Abstand, der proportional zur Container-Breite skaliert. Auf breiten Bildschirmen wird der Abstand größer, auf schmalen kleiner. Das sorgt für visuell ausgewogene Proportionen über alle Geräte hinweg.
Prozent bei Schriftgrößen: Vorsicht geboten
Bei Schriftgrößen wird Prozent schnell problematisch. Die Einheit bezieht sich auf die Schriftgröße des Elternelements, was zu kaskadierenden Effekten führt. Wenn ein Elternelement font-size: 16px hat und du setzt font-size: 150%, erhältst du 24px. Verschachtelst du mehrere Elemente mit Prozentwerten, multiplizieren sich die Faktoren.
| Verschachtelungsebene | CSS font-size | Berechnete Größe | Effekt |
|---|---|---|---|
| Body | 16px (Root) | 16px | Basis |
| Section | 120% | 19.2px (16 × 1.2) | +20% |
| Container | 110% | 21.12px (19.2 × 1.1) | +10% von 19.2px |
| Überschrift | 150% | 31.68px (21.12 × 1.5) | +50% von 21.12px |
Diese Berechnungen werden schnell unübersichtlich. Für Typografie sind rem oder em die bessere Wahl, da sie vorhersehbarere Ergebnisse liefern.

Höhen mit Prozent: Die Besonderheit des Elternelements
Bei Höhenangaben funktioniert Prozent nur, wenn das Elternelement eine definierte Höhe hat. Ein Element mit height: 50% benötigt ein Elternelement mit fixer oder berechneter Höhe. Fehlt diese Definition, ignoriert der Browser den Prozentwert.
Für vertikale Layouts sind deshalb oft Viewport-Einheiten wie vh praktischer. Sie beziehen sich auf die Viewport-Höhe, nicht auf das Elternelement. Ein Element mit height: 50vh nimmt immer die Hälfte der sichtbaren Bildschirmhöhe ein, unabhängig von der Container-Struktur.
Die Kombination von Prozent mit anderen Einheiten ermöglicht flexible Designs. Du kannst einen Container mit width: 80% und max-width: 1200px kombinieren. Auf breiten Bildschirmen bleibt der Container bei maximal 1200px, auf schmalen skaliert er prozentual mit. Diese Technik ist Standard bei modernen Unternehmenswebseiten.
4. em und rem: Die typografischen Einheiten für skalierbare Designs
Die Einheiten em und rem gehören zu den wichtigsten relativen Einheiten im modernen Webdesign. Beide beziehen sich auf Schriftgrößen, unterscheiden sich aber fundamental in ihrem Referenzpunkt. Während em sich auf die Schriftgröße des Elternelements bezieht, referenziert rem immer auf die Root-Schriftgröße des HTML-Elements.
Diese Einheiten ermöglichen skalierbare Typografie, die sich an Nutzerpräferenzen anpasst. Wenn jemand in den Browser-Einstellungen die Standardschriftgröße von 16px auf 20px erhöht, skalieren alle rem- und em-basierten Werte proportional mit. Das verbessert die Barrierefreiheit erheblich und entspricht den WCAG-Richtlinien für zugängliche Websites.
rem: Die verlässliche Einheit für konsistente Typografie
rem steht für „root em“ und bezieht sich auf die Schriftgröße des <html>-Elements. In den meisten Browsern beträgt diese Standardgröße 16px. Ein Wert von 1rem entspricht also 16px, 2rem entspricht 32px und 0.875rem entspricht 14px. Der große Vorteil: rem-Werte sind vorhersehbar und unabhängig von der Verschachtelungstiefe.
| rem-Wert | Bei 16px Root | Bei 18px Root | Bei 20px Root | Typische Verwendung |
|---|---|---|---|---|
| 0.75rem | 12px | 13.5px | 15px | Kleine Labels, Captions |
| 0.875rem | 14px | 15.75px | 17.5px | Kleinerer Fließtext |
| 1rem | 16px | 18px | 20px | Body-Text, Basis |
| 1.125rem | 18px | 20.25px | 22.5px | Lead-Text, Intros |
| 1.5rem | 24px | 27px | 30px | H3-Überschriften |
| 2rem | 32px | 36px | 40px | H2-Überschriften |
| 2.5rem | 40px | 45px | 50px | H1-Überschriften |
Für Schriftgrößen ist rem die ideale Wahl. Du definierst eine typografische Hierarchie einmal und sie bleibt über die gesamte Website konsistent. Eine Überschrift mit font-size: 2.5rem hat immer dieselbe Größe, egal wo sie platziert wird. Das vereinfacht die Wartung und sorgt für visuell stimmige Proportionen.
em: Kontextabhängige Skalierung für verschachtelte Elemente
em bezieht sich auf die Schriftgröße des direkten Elternelements. Wenn ein Element font-size: 18px hat und du setzt darin ein Kind-Element auf font-size: 1.5em, erhältst du 27px (18 × 1.5). Diese Kaskadierung kann gewollt sein, führt aber schnell zu multiplikativen Effekten bei tiefer Verschachtelung.
| Aspekt | em | rem |
|---|---|---|
| Referenzpunkt | Elternelement | Root-Element (html) |
| Verschachtelungseffekt | Ja (multiplikativ) | Nein (konstant) |
| Vorhersehbarkeit | Kontextabhängig | Immer gleich |
| Beste Verwendung | Komponenten-internes Spacing | Globale Schriftgrößen, Abstände |
| Typisches Beispiel | Button padding relativ zur Button-Schriftgröße | H1, H2, Body-Text Größen |
em eignet sich besonders für Padding und Margin innerhalb von Komponenten. Ein Button mit font-size: 1rem und padding: 0.5em 1em skaliert sein Padding proportional zur Schriftgröße. Änderst du die Schriftgröße des Buttons, passt sich das Padding automatisch an. Das sorgt für ausgewogene Proportionen bei allen Button-Größen.

Der praktische Unterschied: Verschachtelungseffekte im Vergleich
| Verschachtelung | em-Wert | Berechnete Größe (em) | rem-Wert | Berechnete Größe (rem) |
|---|---|---|---|---|
| Root (16px) | 1em | 16px | 1rem | 16px |
| Ebene 1: 1.2em | 1.2em | 19.2px (16 × 1.2) | 1.2rem | 19.2px |
| Ebene 2: 1.2em | 1.2em | 23.04px (19.2 × 1.2) | 1.2rem | 19.2px |
| Ebene 3: 1.2em | 1.2em | 27.65px (23.04 × 1.2) | 1.2rem | 19.2px |
Der Hauptunterschied zeigt sich bei verschachtelten Elementen. Mit rem bleibt alles vorhersehbar, weil sich alle Werte auf denselben Root-Wert beziehen. Mit em entstehen Ketten von Berechnungen. Eine detaillierte Gegenüberstellung von rem vs. em zeigt: Für globale Konsistenz nutzt du rem, für komponenteninterne Proportionen em.
Umrechnung und praktische Werte
Für die Umrechnung zwischen Pixel und rem gilt bei 16px Root-Größe: rem = px ÷ 16. Eine Schriftgröße von 18px entspricht 1.125rem, 24px entspricht 1.5rem. Viele Designer arbeiten mit einem typografischen Scale: 0.875rem (14px), 1rem (16px), 1.125rem (18px), 1.25rem (20px), 1.5rem (24px), 2rem (32px).
In Elementor kannst du rem-Werte direkt in den Eingabefeldern verwenden. Wähle im Dropdown die Einheit „rem“ und gib den gewünschten Wert ein. Für Abstände funktioniert oft ein 8px-Grid (0.5rem) als Basis: 0.5rem, 1rem, 1.5rem, 2rem, 3rem, 4rem. Das erzeugt harmonische Proportionen und erleichtert die Wartung.
Der Wechsel von Pixel zu rem erfordert anfangs Umdenken, zahlt sich aber langfristig aus. Deine Website wird zugänglicher, wartbarer und verhält sich vorhersehbarer über verschiedene Geräte hinweg. Moderne Webdesign-Standards empfehlen rem für nahezu alle Größenangaben außer Borders und Schatten.
5. Viewport-Einheiten: vw, vh, vmin und vmax für bildschirmbasierte Layouts
Viewport-Einheiten beziehen sich direkt auf die Größe des sichtbaren Browserfensters. Sie ermöglichen Layouts, die sich proportional zur Bildschirmgröße verhalten, unabhängig von Elterncontainern oder Schriftgrößen. Diese Einheiten sind unverzichtbar für moderne, großflächige Designs und Full-Screen-Sections.
Die vier wichtigsten Viewport-Einheiten sind vw (viewport width), vh (viewport height), vmin (kleinere Dimension) und vmax (größere Dimension). Ein Wert von 1vw entspricht 1% der Viewport-Breite, 1vh entspricht 1% der Viewport-Höhe. Auf einem 1920px breiten Monitor entspricht 50vw also 960px.
vw und vh: Breite und Höhe relativ zum Viewport
vw (viewport width) nutzt du für Elemente, die sich proportional zur Fensterbreite skalieren sollen. Eine Überschrift mit font-size: 5vw wird auf einem Desktop-Monitor deutlich größer dargestellt als auf einem Smartphone. Diese Technik eignet sich für Hero-Headlines und großflächige typografische Elemente.
| Gerät | Viewport-Breite | 5vw | 10vw | 50vw | 100vw |
|---|---|---|---|---|---|
| 4K Desktop | 3840px | 192px | 384px | 1920px | 3840px |
| Full HD Desktop | 1920px | 96px | 192px | 960px | 1920px |
| Laptop | 1366px | 68.3px | 136.6px | 683px | 1366px |
| Tablet (Portrait) | 768px | 38.4px | 76.8px | 384px | 768px |
| Mobile (Large) | 414px | 20.7px | 41.4px | 207px | 414px |
| Mobile (Small) | 375px | 18.75px | 37.5px | 187.5px | 375px |
vh (viewport height) ist ideal für vertikale Layouts. Eine Section mit height: 100vh füllt exakt die sichtbare Bildschirmhöhe aus, egal ob auf einem 13-Zoll-Laptop oder einem 27-Zoll-Monitor. Das ermöglicht Full-Screen-Abschnitte, die perfekt in den Viewport passen.
| Gerät | Viewport-Höhe | 25vh | 50vh | 100vh |
|---|---|---|---|---|
| Desktop 27″ | 1080px | 270px | 540px | 1080px |
| Laptop 15″ | 768px | 192px | 384px | 768px |
| Tablet (Landscape) | 1024px | 256px | 512px | 1024px |
| Mobile (Portrait) | 812px | 203px | 406px | 812px |
vmin und vmax: Die flexiblen Viewport-Einheiten
vmin bezieht sich auf die kleinere der beiden Viewport-Dimensionen. Auf einem Hochformat-Smartphone (375×667px) entspricht 1vmin 3.75px (1% von 375px). Im Querformat desselben Geräts (667×375px) wären es ebenfalls 3.75px. vmin sorgt dafür, dass Elemente sowohl in Portrait- als auch Landscape-Orientierung funktionieren.
| Gerät & Orientierung | Breite × Höhe | vmin bezieht sich auf | 10vmin |
|---|---|---|---|
| Desktop | 1920 × 1080px | 1080px (Höhe) | 108px |
| Tablet Portrait | 768 × 1024px | 768px (Breite) | 76.8px |
| Tablet Landscape | 1024 × 768px | 768px (Höhe) | 76.8px |
| Mobile Portrait | 375 × 667px | 375px (Breite) | 37.5px |
| Mobile Landscape | 667 × 375px | 375px (Höhe) | 37.5px |
vmax funktioniert umgekehrt und bezieht sich auf die größere Dimension. Diese Einheit nutzt du seltener, kann aber für spezielle Effekte nützlich sein. Ein quadratisches Element mit width: 50vmin und height: 50vmin bleibt in beiden Orientierungen quadratisch und passt immer ins Fenster.

Typografie mit Viewport-Einheiten: Fluid Typography
Viewport-Einheiten ermöglichen Fluid Typography, bei der sich Schriftgrößen stufenlos an die Bildschirmbreite anpassen. Statt fixer Breakpoints mit unterschiedlichen Pixelwerten skaliert die Schrift kontinuierlich. Eine Überschrift mit font-size: 4vw wird auf einem 1920px-Monitor 76.8px groß, auf einem 375px-Smartphone nur 15px.
Das Problem: Bei sehr kleinen oder sehr großen Bildschirmen können die Werte extrem werden. Auf einem 4K-Monitor (3840px) würde font-size: 4vw zu unlesbaren 153.6px führen. Auf einem 320px-Smartphone wären es nur 12.8px. Deshalb kombinierst du vw idealerweise mit clamp() oder setzt Min/Max-Grenzen mit Media Queries.
Viewport-Einheiten für Spacing und Layout
Für Abstände funktionieren Viewport-Einheiten ausgezeichnet. Ein padding: 5vh 10vw erzeugt Abstände, die sich proportional zum Bildschirm verhalten. Auf großen Monitoren bleiben großzügige Weißräume erhalten, auf kleinen Geräten verschwenden die Abstände keinen wertvollen Platz.
Bei Container-Breiten kannst du vw als Alternative zu Prozent verwenden. Ein Container mit width: 90vw nimmt immer 90% der Viewport-Breite ein, unabhängig von Elternelementen. Das vereinfacht manche Layout-Strukturen, besonders bei komplexen Verschachtelungen in Elementor.
Ein häufiger Anwendungsfall sind Sticky Header. Wenn du einen Header mit fixer Höhe hast und darunter Content platzierst, kannst du height: calc(100vh - 80px) verwenden. Der Content füllt die Viewport-Höhe minus Header-Höhe aus. Diese Technik nutzen viele professionelle Webdesigner für One-Page-Layouts.
6. Moderne CSS-Funktionen: clamp(), calc() und min()/max()
Moderne CSS-Funktionen erweitern die Möglichkeiten von Einheiten erheblich. Mit clamp(), calc(), min() und max() kombinierst du verschiedene Einheiten, definierst Grenzen und führst Berechnungen direkt im CSS durch. Diese Funktionen sind in Elementor vollständig nutzbar und ermöglichen hochflexible, responsive Designs ohne JavaScript.
Der größte Vorteil dieser Funktionen liegt in der kontextabhängigen Flexibilität. Du kannst Werte definieren, die sich innerhalb festgelegter Grenzen an verschiedene Bedingungen anpassen. Das reduziert die Notwendigkeit für breakpoint-spezifische Anpassungen und macht dein CSS wartbarer.
clamp(): Fluid Typography mit Minimal- und Maximalwerten
clamp() ist die ideale Funktion für Fluid Typography und responsive Abstände. Die Syntax lautet: clamp(minimum, preferred, maximum). Der Browser wählt den bevorzugten Wert, sofern er zwischen Minimum und Maximum liegt. Ist er kleiner, wird das Minimum verwendet, ist er größer, das Maximum.
| Viewport-Breite | clamp(1rem, 2.5vw, 2.5rem) | Warum dieser Wert? |
|---|---|---|
| 320px (Mobile Small) | 16px (1rem) | 2.5vw = 8px → Minimum greift |
| 640px (Mobile) | 16px (1rem) | 2.5vw = 16px → entspricht Minimum |
| 800px (Tablet Small) | 20px | 2.5vw = 20px → bevorzugter Wert |
| 1200px (Laptop) | 30px | 2.5vw = 30px → bevorzugter Wert |
| 1600px (Desktop) | 40px (2.5rem) | 2.5vw = 40px → entspricht Maximum |
| 1920px (Full HD) | 40px (2.5rem) | 2.5vw = 48px → Maximum greift |
| 3840px (4K) | 40px (2.5rem) | 2.5vw = 96px → Maximum greift |
Ein praktisches Beispiel: font-size: clamp(1rem, 2.5vw, 2.5rem). Diese Überschrift ist mindestens 16px groß, maximal 40px und skaliert dazwischen mit 2.5% der Viewport-Breite. Auf einem 1920px-Monitor wären 2.5vw = 48px, aber clamp() begrenzt auf maximal 40px. Auf einem 320px-Smartphone wären 2.5vw nur 8px, aber das Minimum von 16px greift.
Praktische clamp()-Beispiele für Elementor
| Element-Typ | clamp()-Formel | Ergebnis |
|---|---|---|
| H1 Überschrift | clamp(2rem, 5vw, 4rem) | 32px–64px, skaliert mit Viewport |
| H2 Überschrift | clamp(1.5rem, 3.5vw, 3rem) | 24px–48px, skaliert mit Viewport |
| Body Text | clamp(1rem, 1.2vw, 1.125rem) | 16px–18px, skaliert mit Viewport |
| Section Padding | clamp(2rem, 8vw, 6rem) | 32px–96px vertikaler Abstand |
| Container Width | clamp(320px, 90vw, 1200px) | Responsive Container mit Grenzen |
calc(): Mathematische Berechnungen mit gemischten Einheiten
calc() ermöglicht Berechnungen direkt im CSS. Du kannst verschiedene Einheiten addieren, subtrahieren, multiplizieren und dividieren. Die Funktion ist besonders wertvoll, wenn du Layouts mit fixen und flexiblen Komponenten kombinierst.
| calc()-Formel | Anwendungsfall | Beispiel-Ergebnis bei 1920px Viewport |
|---|---|---|
| calc(100% – 40px) | Container mit fixem Abstand | 100% der Breite minus 40px Rand |
| calc(100vw – 300px) | Content neben fixer Sidebar | 1620px (1920px – 300px) |
| calc(100vh – 80px) | Content unter fixem Header | Volle Höhe minus 80px Header |
| calc(50% + 20px) | Hälfte plus Offset | 50% der Container-Breite + 20px |
| calc((100vw – 1200px) / 2) | Zentrierung 1200px Container | 360px Abstand links/rechts |
| calc(1rem + 2vw) | Basis + viewport-skaliert | 16px + 38.4px = 54.4px bei 1920px |
Ein klassischer Anwendungsfall: width: calc(100% - 40px). Der Container nimmt die volle Breite minus 40px ein. Das funktioniert für Layouts mit fixem Sidebar und flexiblem Content-Bereich: width: calc(100% - 300px) gibt dem Content-Bereich die gesamte Breite minus die 300px breite Sidebar.

min() und max(): Dynamische Minimal- und Maximalwerte
min() wählt den kleineren von mehreren Werten, max() den größeren. Diese Funktionen wirken zunächst simpel, sind aber extrem praktisch für responsive Container-Breiten. Ein Element mit width: min(90vw, 1200px) nimmt maximal 1200px ein, auf schmalen Bildschirmen aber nur 90% der Viewport-Breite.
| Viewport-Breite | min(90vw, 1200px) | max(20px, 3vw) |
|---|---|---|
| 375px (Mobile) | 337.5px (90vw ist kleiner) | 20px (20px ist größer als 11.25px) |
| 768px (Tablet) | 691.2px (90vw ist kleiner) | 23.04px (3vw ist größer) |
| 1024px (Laptop) | 921.6px (90vw ist kleiner) | 30.72px (3vw ist größer) |
| 1366px (Desktop) | 1200px (1200px ist kleiner) | 40.98px (3vw ist größer) |
| 1920px (Full HD) | 1200px (1200px ist kleiner) | 57.6px (3vw ist größer) |
Das ersetzt die klassische Kombination aus width: 90%; max-width: 1200px mit einer einzigen Zeile. Der Code ist kürzer und semantisch klarer. Für Padding funktioniert dasselbe Prinzip: padding: max(20px, 3vw) sorgt für mindestens 20px Abstand, auf großen Bildschirmen aber 3% der Viewport-Breite.
Praktische Kombinationen in Elementor
Die wahre Stärke zeigt sich in der Kombination mehrerer Funktionen. Eine responsive Überschrift könnte so aussehen: font-size: clamp(1.5rem, calc(1rem + 2vw), 3rem). Der bevorzugte Wert calc(1rem + 2vw) kombiniert eine Basis-Schriftgröße mit viewport-basierter Skalierung, während clamp() Unter- und Obergrenzen setzt.
| Kombinations-Formel | Verwendungszweck | Vorteil |
|---|---|---|
| clamp(1.5rem, calc(1rem + 2vw), 3rem) | Fluid Typography mit Basis | Nie zu klein, nie zu groß, smooth skalierend |
| clamp(1rem, 5vw, 4rem) | Responsive Padding | Automatisch angepasste Abstände ohne Breakpoints |
| min(calc(100% – 2rem), 1200px) | Container mit Innenabstand | Max-width mit automatischem Spacing |
| max(1rem, min(3vw, 2rem)) | Verschachtelte Grenzen | Komplexe responsive Regeln in einer Zeile |
Für responsive Spacing nutzt du: padding: clamp(1rem, 5vw, 4rem) 0. Das vertikale Padding skaliert zwischen 16px und 64px, abhängig von der Viewport-Breite. Auf einem 1920px-Monitor wären 5vw = 96px, aber clamp() begrenzt auf 64px. Auf einem 375px-Smartphone wären 5vw nur 18.75px, nahe am Minimum von 16px.
In Elementor gibst du diese Funktionen direkt in die Eingabefelder ein. Wähle „Custom“ oder belasse die Einheit auf „px“ und überschreibe den Wert mit deiner Funktion. Elementor akzeptiert alle CSS-Funktionen und schreibt sie korrekt ins Stylesheet. Das funktioniert für Schriftgrößen, Abstände, Breiten, Höhen und praktisch alle dimensionalen Eigenschaften.
Diese modernen Funktionen sind browserübergreifend gut unterstützt. Alle aktuellen Browser verstehen clamp(), calc(), min() und max(). Du kannst sie bedenkenlos einsetzen, ohne Fallbacks definieren zu müssen. Sie sind der Schlüssel zu wirklich responsiven Designs, die ohne komplexe Media-Query-Kaskaden auskommen.
7. Alle Einheiten im direkten Vergleich: Entscheidungstabellen für die Praxis
Nach der detaillierten Betrachtung einzelner Einheiten hilft dir dieser Abschnitt, die richtige Einheit für jede Situation zu wählen. Die folgenden Tabellen fassen alle wichtigen Eigenschaften zusammen und geben dir konkrete Entscheidungshilfen für deine Elementor-Projekte.
Übersicht: Alle CSS-Einheiten und ihre Eigenschaften
| Einheit | Typ | Bezugspunkt | Nutzer-Skalierung | Responsive |
|---|---|---|---|---|
| px | Absolut | Fixe Größe | Nein | Nein |
| % | Relativ | Elternelement | Nein | Ja |
| em | Relativ | Elternelement-Schriftgröße | Ja | Ja |
| rem | Relativ | Root-Schriftgröße (html) | Ja | Ja |
| vw | Relativ | Viewport-Breite | Nein | Ja |
| vh | Relativ | Viewport-Höhe | Nein | Ja |
| vmin | Relativ | Kleinere Viewport-Dimension | Nein | Ja |
| vmax | Relativ | Größere Viewport-Dimension | Nein | Ja |
| clamp() | Funktion | Min/Preferred/Max kombiniert | Abhängig von Einheiten | Ja |
| calc() | Funktion | Berechnungen verschiedener Einheiten | Abhängig von Einheiten | Ja |
Welche Einheit für welches Element? Die Entscheidungsmatrix
| Element/Eigenschaft | Empfohlene Einheit | Alternative | Nicht empfohlen |
|---|---|---|---|
| Body-Text Schriftgröße | rem (1rem = 16px) | em | px, vw |
| Überschriften (H1-H6) | rem (1.5rem–3rem) | clamp() für Fluid | px |
| Hero-Überschriften | clamp(2rem, 5vw, 4rem) | vw mit Grenzen | Reines px oder vw |
| Buttons Schriftgröße | rem (0.875rem–1.125rem) | em | px |
| Button Padding | em (0.75em 1.5em) | rem | px, % |
| Section Padding (vertikal) | clamp(2rem, 8vh, 6rem) | rem, vh | px |
| Section Padding (horizontal) | clamp(1rem, 5vw, 4rem) | %, vw | px |
| Container Max-Width | px (1200px, 1400px) | rem | %, vw |
| Container Width | % (80%, 90%, 100%) | vw, min(90vw, 1200px) | px |
| Spalten-Breiten | % (33.33%, 50%) | fr (in Grid) | px, vw |
| Hero Section Höhe | vh (100vh, 80vh) | calc(100vh – 80px) | px, % |
| Border | px (1px, 2px) | — | rem, em, % |
| Border-Radius | px (4px, 8px, 12px) | rem für Konsistenz | %, vw |
| Box-Shadow | px (0 2px 8px) | — | rem, % |
| Icon-Größen | px (16px, 24px, 32px) | rem | em, % |
| Gaps/Gutters | rem (1rem, 2rem) | px | % |
| Media Queries Breakpoints | em, rem | px | vw, vh |

Vor- und Nachteile im direkten Vergleich
| Einheit | Hauptvorteil | Hauptnachteil | Best Practice |
|---|---|---|---|
| px | Absolute Kontrolle, pixelgenaue Layouts | Keine Barrierefreiheit, nicht responsive | Nur für Borders, Shadows, kleine Details |
| % | Flexibel relativ zum Container | Multiplikative Effekte bei Schriftgrößen | Für Breiten, nicht für Schriftgrößen |
| em | Kontextabhängig skalierbar | Kaskadierende Berechnungen bei Verschachtelung | Für komponenteninternes Spacing |
| rem | Konsistent, barrierefrei, vorhersehbar | Nicht kontextabhängig (kann auch Vorteil sein) | Für Typografie und globale Abstände |
| vw | Skaliert mit Viewport-Breite | Kann extreme Werte auf 4K oder Mobile erzeugen | Mit clamp() kombinieren |
| vh | Perfekt für Full-Screen-Sections | Mobile Browser mit dynamischer UI problematisch | Für Hero-Sections mit Fallbacks |
| vmin | Orientierungsunabhängig | Weniger intuitiv als vw/vh | Für quadratische Elemente |
| vmax | Basiert auf größerer Dimension | Selten praktisch nutzbar | Spezielle Design-Effekte |
| clamp() | Fluid mit Min/Max-Grenzen, kein Media Query nötig | Etwas komplexere Syntax | Moderne responsive Typografie |
| calc() | Flexible Berechnungen, mischt Einheiten | Kann unleserlich werden bei Verschachtelung | Layouts mit fixen + flexiblen Teilen |
Typische Elementor-Szenarien: Welche Einheit wann?
| Szenario | Problemstellung | Lösung | CSS-Code Beispiel |
|---|---|---|---|
| Responsive Überschrift | Soll auf Mobile klein, Desktop groß sein | clamp() mit vw | font-size: clamp(1.5rem, 4vw, 3rem) |
| Zentrierter Container | Max 1200px, auf Mobile volle Breite | % + max-width oder min() | width: min(90%, 1200px) |
| Full-Screen Hero | Volle Höhe minus Header | vh + calc() | height: calc(100vh – 80px) |
| Buttons gleiche Proportionen | Padding soll mit Schriftgröße skalieren | em für Padding | padding: 0.75em 1.5em |
| Responsive Abstände | Großzügig auf Desktop, kompakt auf Mobile | clamp() mit vw | padding: clamp(2rem, 5vw, 4rem) 0 |
| Sidebar + Content | Sidebar fix 300px, Rest flexibel | calc() mit Prozent | width: calc(100% – 300px) |
| Grid mit Gaps | 3 Spalten mit gleichmäßigen Abständen | % oder fr + rem Gap | grid: repeat(3, 1fr); gap: 2rem |
| Icon neben Text | Icon soll mit Text-Größe skalieren | em für Icon-Größe | width: 1.2em; height: 1.2em |
| Barrierefreie Schrift | Nutzer soll Schriftgröße ändern können | rem für alle Schriftgrößen | font-size: 1rem (statt 16px) |
| Konsistente Borders | Immer gleich dünn, unabhängig vom Rest | px für Borders | border: 1px solid #ddd |
Checkliste: Einheiten-Wahl für neue Elementor-Projekte
Wenn du ein neues Projekt in Elementor startest, folge dieser praxiserprobten Strategie:
| Schritt | Aktion | Empfohlene Einheiten |
|---|---|---|
| 1. Typografie-System definieren | Base-Schriftgröße + Type Scale festlegen | rem für alle Größen (1rem, 1.125rem, 1.5rem, 2rem, 2.5rem) |
| 2. Spacing-System aufbauen | 8px-Grid oder ähnliches etablieren | rem (0.5rem, 1rem, 1.5rem, 2rem, 3rem, 4rem, 6rem) |
| 3. Container-Breiten festlegen | Max-Breiten für Content-Bereiche | px oder rem für max-width (1200px oder 75rem) |
| 4. Layout-Grid einrichten | Spalten und Gutters definieren | % oder fr für Spalten, rem für Gaps |
| 5. Responsive Breakpoints | Media Queries vorbereiten | em oder rem für Breakpoint-Werte |
| 6. Komponenten stylen | Buttons, Cards, etc. designen | rem für Größen, em für komponenteninternes Padding |
| 7. Hero/Full-Screen Areas | Große visuelle Bereiche gestalten | vh für Höhen, clamp() für responsive Headlines |
| 8. Details verfeinern | Borders, Shadows, Icons | px für Borders/Shadows, px oder rem für Icons |
Die goldene Regel: Hybrid-Ansatz für beste Ergebnisse
Die beste Strategie kombiniert verschiedene Einheiten je nach Kontext. Eine moderne, professionelle Elementor-Website nutzt typischerweise folgende Verteilung:
| Einsatzbereich | Anteil | Haupteinheit | Ergänzende Einheiten |
|---|---|---|---|
| Typografie | ~40% | rem | clamp() für Headlines |
| Spacing (Padding/Margin) | ~30% | rem | clamp(), em |
| Layout (Breiten/Höhen) | ~15% | %, vh | calc(), min(), max() |
| Details (Border/Shadow) | ~10% | px | — |
| Spezialeffekte | ~5% | vw, vmin | calc() Kombinationen |
Mit diesem Hybrid-Ansatz erreichst du die optimale Balance zwischen Kontrolle, Flexibilität und Barrierefreiheit. Deine Website wird auf allen Geräten gut aussehen, Nutzereinstellungen respektieren und gleichzeitig wartbar bleiben. Die Investition in das Verständnis der verschiedenen Einheiten zahlt sich langfristig in jedem Webdesign-Projekt aus.
Zusammenfassung
CSS-Einheiten in Elementor sind weit mehr als technische Details. Sie bestimmen, ob deine Website responsiv funktioniert, barrierefrei ist und auf allen Geräten professionell wirkt. Jede Einheit hat spezifische Stärken und Schwächen, die du für verschiedene Designaufgaben nutzen kannst.
Pixel (px) bieten absolute Kontrolle und eignen sich perfekt für Borders, Shadows und kleine Details, ignorieren aber Nutzereinstellungen komplett. Prozent (%) ermöglicht flexible Container, die sich an Elternelemente anpassen, führt bei Schriftgrößen jedoch zu kaskadierenden Effekten. rem ist die ideale Einheit für Typografie und globale Abstände, da sie konsistent bleibt und Barrierefreiheit gewährleistet, während em sich für komponenteninternes Spacing eignet, bei dem Proportionen erhalten bleiben sollen.
Viewport-Einheiten wie vw und vh ermöglichen bildschirmbasierte Layouts, die sich direkt an die Fenstergröße anpassen. Sie sind unverzichtbar für Full-Screen-Sections und großflächige Designs, können aber ohne Begrenzungen zu extremen Werten führen. Moderne CSS-Funktionen wie clamp(), calc(), min() und max() kombinieren verschiedene Einheiten intelligent und reduzieren die Notwendigkeit für komplexe Media Queries erheblich.
Der erfolgreichste Ansatz ist ein Hybrid-System: rem für Typografie und Abstände, Prozent für flexible Container, px für präzise Details und clamp() für responsive Elemente ohne Breakpoints. Diese Kombination schafft Websites, die technisch solide sind, auf allen Geräten funktionieren und gleichzeitig wartbar bleiben. Die richtige Einheiten-Wahl ist keine einmalige Entscheidung, sondern eine durchdachte Strategie für jedes einzelne Element deines Layouts.
Fazit
Die Wahl der richtigen CSS-Einheit in Elementor entscheidet über den Unterschied zwischen einer Website, die funktioniert, und einer Website, die begeistert. Wer ausschließlich mit Pixeln arbeitet, verschenkt Potenzial für Barrierefreiheit und responsive Anpassung. Wer wahllos relative Einheiten einsetzt, riskiert unvorhersehbares Verhalten und komplizierte Fehlersuche.
Die gute Nachricht: Du musst nicht jede Einheit in jedem Projekt verwenden. Beginne mit einem soliden Fundament aus rem für Typografie, nutze Prozent für flexible Container und setze clamp() dort ein, wo du stufenlose Skalierung brauchst. Mit dieser Basis erreichst du bereits 90% dessen, was eine moderne professionelle Website ausmacht.
Die CSS-Einheiten entwickeln sich kontinuierlich weiter. Funktionen wie clamp() waren vor wenigen Jahren noch experimentell, heute sind sie Standard. Bleib offen für neue Entwicklungen, aber vertraue auf die bewährten Prinzipien: Barrierefreiheit durch skalierbare Einheiten, Flexibilität durch relative Werte und Präzision dort, wo sie wirklich nötig ist. Deine Elementor-Projekte werden es dir danken.
Wenn du Unterstützung bei der Umsetzung professioneller, responsiver Websites mit durchdachten CSS-Einheiten-Strategien benötigst, steht dir das Team von Gernhard Unternehmenswebseiten gerne zur Verfügung. Gemeinsam entwickeln wir Websites, die nicht nur gut aussehen, sondern technisch fundiert und zukunftssicher sind.
FAQ: Häufig gestellte Fragen zu CSS-Einheiten in Elementor
Welche CSS-Einheit sollte ich für Schriftgrößen in Elementor verwenden?
Für Schriftgrößen ist rem die beste Wahl. Diese Einheit bezieht sich auf die Root-Schriftgröße und ermöglicht barrierefreie Websites, die Nutzereinstellungen respektieren. Ein Wert von 1rem entspricht bei Standard-Einstellungen 16px. Für responsive Headlines funktioniert clamp(1.5rem, 4vw, 3rem) hervorragend, da die Schriftgröße zwischen Minimal- und Maximalwert skaliert. Vermeide px für Schriftgrößen, da diese Einheit Nutzer mit eingeschränkter Sehfähigkeit benachteiligt, die ihre Browser-Schriftgröße erhöhen.
Warum funktioniert meine Höhenangabe in Prozent nicht?
Prozentuale Höhenangaben funktionieren nur, wenn das Elternelement eine definierte Höhe hat. Wenn du height: 50% setzt, sucht der Browser nach der Höhe des Containers. Fehlt diese, ignoriert er den Prozentwert. Die Lösung: Verwende stattdessen vh (Viewport Height), das sich auf die Bildschirmhöhe bezieht. Ein Element mit height: 50vh nimmt immer die Hälfte der sichtbaren Bildschirmhöhe ein, unabhängig vom Elternelement. Alternativ kannst du dem Elternelement eine fixe Höhe in px oder eine eigene vh-Höhe geben.
Was ist besser für responsive Layouts: em oder rem?
rem ist für die meisten Fälle die bessere Wahl, besonders für globale Elemente wie Überschriften, Body-Text und Abstände. rem-Werte bleiben konsistent, weil sie sich immer auf die Root-Schriftgröße beziehen. em eignet sich für komponenteninternes Spacing, zum Beispiel Button-Padding, das proportional zur Button-Schriftgröße skalieren soll. Der Hauptunterschied: em multipliziert sich bei Verschachtelung, rem bleibt konstant. Für die meisten Elementor-Projekte empfiehlt sich ein Mix: rem für Typografie und globale Abstände, em für komponenteninterne Proportionen.
Wie verwende ich clamp() richtig in Elementor?
Die clamp()-Funktion hat drei Werte: Minimum, bevorzugter Wert und Maximum. Die Syntax lautet clamp(min, preferred, max). Für eine responsive Überschrift verwendest du beispielsweise font-size: clamp(1.5rem, 4vw, 3rem). Die Schriftgröße ist minimal 24px (1.5rem), skaliert mit 4% der Viewport-Breite und wird bei maximal 48px (3rem) begrenzt. In Elementor gibst du diese Funktion direkt ins Eingabefeld ein, indem du die Einheit auf „Custom“ setzt oder den vorhandenen Wert überschreibst. clamp() funktioniert für Schriftgrößen, Padding, Margin und praktisch alle dimensionalen Eigenschaften.
Sollte ich px komplett vermeiden?
Nein, px hat durchaus seine Berechtigung. Für Borders, Box-Shadows, Border-Radius und kleine Icons sind Pixel ideal, da diese Elemente eine präzise, feste Größe brauchen. Ein Border von 1px soll genau 1px dünn sein, unabhängig von Schriftgrößen oder Viewport. Problematisch wird px bei Schriftgrößen und großen Abständen, weil diese Werte Barrierefreiheit einschränken und manuelle Breakpoint-Anpassungen erfordern. Die beste Strategie: Nutze px für Details, die fix bleiben sollen, und relative Einheiten wie rem für alles, was skalieren soll. Ein modernes Layout kombiniert beide Ansätze strategisch.
Was bedeutet vmin und wann brauche ich es?
vmin bezieht sich auf die kleinere der beiden Viewport-Dimensionen. Auf einem Hochformat-Smartphone mit 375×667px entspricht 1vmin 3.75px (1% von 375px). Dreht der Nutzer das Gerät ins Querformat (667×375px), bleibt 1vmin bei 3.75px (jetzt 1% von 375px Höhe). Diese Einheit ist nützlich für Elemente, die in beiden Orientierungen funktionieren müssen, besonders bei quadratischen Elementen. Ein Icon mit width: 10vmin; height: 10vmin bleibt immer quadratisch und passt sowohl im Portrait- als auch Landscape-Modus ins Fenster. In der Praxis nutzt du vmin seltener als vw oder vh, aber für orientierungsunabhängige Designs ist es wertvoll.
Wie kombiniere ich calc() mit anderen Einheiten?
Die calc()-Funktion erlaubt mathematische Operationen mit verschiedenen Einheiten. Du kannst addieren, subtrahieren, multiplizieren und dividieren. Wichtig: Bei Addition und Subtraktion müssen Leerzeichen vor und nach dem Operator stehen. Beispiele: width: calc(100% - 40px) erzeugt volle Breite minus 40px Abstand. height: calc(100vh - 80px) füllt die Viewport-Höhe minus einen 80px hohen Header. font-size: calc(1rem + 2vw) kombiniert eine Basis-Schriftgröße mit viewport-basierter Skalierung. In Elementor gibst du calc() direkt ins Eingabefeld ein. Die Funktion ist besonders wertvoll für Layouts mit fixen und flexiblen Komponenten.
Funktionieren CSS-Einheiten wie clamp() in allen Browsern?
Ja, alle modernen CSS-Funktionen wie clamp(), calc(), min() und max() werden von aktuellen Browsern vollständig unterstützt. clamp() ist seit 2020 in Chrome, Firefox, Safari und Edge verfügbar. calc() wird bereits seit vielen Jahren von allen Browsern verstanden. Die Browser-Kompatibilität ist ausgezeichnet, sodass du diese Funktionen bedenkenlos einsetzen kannst. Lediglich sehr alte Browser (Internet Explorer 11 und früher) verstehen clamp() nicht, aber diese Browser haben einen Marktanteil unter 1% und werden von den meisten Websites nicht mehr unterstützt. Für produktive Elementor-Projekte kannst du moderne CSS-Funktionen ohne Fallbacks verwenden.
Wie stelle ich ein responsives Spacing-System ohne Media Queries auf?
Mit clamp() erstellst du responsive Abstände, die ohne Media Queries auskommen. Definiere vertikales Section-Padding beispielsweise mit padding: clamp(2rem, 8vw, 6rem) 0. Auf kleinen Bildschirmen beträgt das Padding minimal 32px, auf großen maximal 96px, dazwischen skaliert es mit 8% der Viewport-Breite. Für horizontales Padding nutzt du padding: 0 clamp(1rem, 5vw, 4rem). Diese Werte passen sich automatisch an die Bildschirmgröße an. Etabliere ein konsistentes System mit mehreren Stufen: clamp(1rem, 3vw, 2rem) für kleine Abstände, clamp(2rem, 5vw, 4rem) für mittlere und clamp(3rem, 8vw, 6rem) für große Abstände. Dein Layout wird flüssig responsiv ohne eine einzige Breakpoint-Definition.
Warum soll ich rem statt px für Media Query Breakpoints verwenden?
Media Queries in em oder rem respektieren Nutzereinstellungen, während px-basierte Breakpoints fix bleiben. Wenn jemand die Browser-Schriftgröße auf 125% erhöht, verschieben sich rem-Breakpoints mit, px-Breakpoints nicht. Ein Breakpoint bei @media (min-width: 48rem) entspricht normalerweise 768px, aber bei erhöhter Schriftgröße triggert er früher. Das Layout passt sich an die Lesbarkeit des Nutzers an. Nutzer mit Sehbehinderungen profitieren davon erheblich. Technisch funktioniert em bei Media Queries minimal besser als rem, da em sich nicht auf Root-Schriftgrößen-Änderungen bezieht. Für Barrierefreiheit empfiehlt sich der Wechsel von px zu em/rem bei allen Breakpoints.


