{"id":68402,"date":"2024-01-22T12:07:45","date_gmt":"2024-01-22T11:07:45","guid":{"rendered":"https:\/\/kinqsta.com\/de\/?p=68402&#038;preview=true&#038;preview_id=68402"},"modified":"2024-01-24T13:16:01","modified_gmt":"2024-01-24T12:16:01","slug":"fortgeschrittene-css-techniken","status":"publish","type":"post","link":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/","title":{"rendered":"Beherrschung fortgeschrittener CSS-Techniken: ein tiefer Einblick in \u00dcberg\u00e4nge, Animationen und Transformationen"},"content":{"rendered":"<p>Bei CSS geht es nicht mehr nur darum, Websites h\u00fcbsch aussehen zu lassen. Es hat sich zu einem Werkzeug entwickelt, das Websites mit Bewegungen und Interaktionen zum Leben erweckt, die fr\u00fcher als unm\u00f6glich galten.<\/p>\n<p>In diesem Leitfaden geht es darum, dich vor allem mit drei leistungsstarken Funktionen vertraut zu machen: \u00dcberg\u00e4nge, Animationen und Transformationen. Diese fortgeschrittenen Techniken zu verstehen und zu nutzen, ist f\u00fcr Webdesigner\/innen und Entwickler\/innen unerl\u00e4sslich, die \u00fcber die <a href=\"https:\/\/kinqsta.com\/de\/blog\/css-best-practices\/\">CSS-Grundlagen<\/a> hinausgehen und Websites erstellen wollen, die sich von anderen abheben &#8211; und den Test der Zeit bestehen.<\/p>\n<p>Auf deinem Weg durch diesen Leitfaden wirst du wertvolle F\u00e4higkeiten erwerben, um deine Webprojekte \u00fcber das Gew\u00f6hnliche hinaus zu verbessern. Und hoffentlich bekommst du auch ein paar Inspirationen mit nach Hause.<br \/>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc><\/p>\n<h2>Erweiterte CSS-\u00dcberg\u00e4nge<\/h2>\n<p>Fortschrittliche CSS-\u00dcberg\u00e4nge machen UI-Elemente interaktiv, ansprechend und angenehm f\u00fcr das Auge. Stell dir vor, du hast einen Button auf deiner Website. Normalerweise steht er einfach nur da, aber mit CSS-\u00dcberg\u00e4ngen \u00e4ndert er sanft seine Farbe oder wird etwas gr\u00f6\u00dfer, wenn du mit der Maus dar\u00fcber f\u00e4hrst.<\/p>\n<p>Das Konzept dreht sich um die Idee der Interpolation &#8211; den flie\u00dfenden \u00dcbergang zwischen verschiedenen Zust\u00e4nden einer CSS-Eigenschaft.<\/p>\n<p>Um diese Effekte zu erzielen, musst du dich mit einigen CSS-Eigenschaften vertraut machen:<\/p>\n<ul>\n<li><strong>\u00dcbergangseigenschaften<\/strong>: Dazu geh\u00f6rt die Angabe der Eigenschaft, die du animieren m\u00f6chtest (z. B. <code>background-color<\/code> oder <code>opacity<\/code>), die Festlegung der Dauer des \u00dcbergangs und die Entscheidung f\u00fcr <code>transition-timing-function<\/code> (z. B. <code>ease-in<\/code> oder <code>linear<\/code>), die vorgibt, wie der \u00dcbergang w\u00e4hrend seiner Dauer verl\u00e4uft.<\/li>\n<li><strong>Timing-Funktionen<\/strong>: Diese sind ein Muss, denn sie steuern die Beschleunigung und Verlangsamung des \u00dcbergangs. Eine der vielseitigsten Optionen ist hier die Funktion <code> cubic-bezier<\/code>. Mit dieser Funktion kannst du benutzerdefinierte Geschwindigkeitskurven erstellen und hast so die vollst\u00e4ndige Kontrolle \u00fcber das Tempo deines \u00dcbergangs. Das kann anfangs etwas knifflig sein, aber Werkzeuge wie <a href=\"https:\/\/cubic-bezier.com\/#.64,.55,.93,.18\" target=\"_blank\" rel=\"noopener noreferrer\">Cubic-Bezier<\/a> machen es einfacher, diese Kurven zu visualisieren und zu erstellen.<\/li>\n<\/ul>\n<figure id=\"attachment_173234\" aria-describedby=\"caption-attachment-173234\" style=\"width: 900px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-173234 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/01\/cubic-bezier.png\" alt=\"cubic-bezier\" width=\"900\" height=\"364\"><figcaption id=\"caption-attachment-173234\" class=\"wp-caption-text\">Ein Beispiel f\u00fcr cubic-bezier in Aktion<\/figcaption><\/figure>\n<p>Hier ist ein einfaches Beispiel, um zu zeigen, wie du es in deinem CSS verwenden kannst:<\/p>\n<pre><code class=\"language-css\">.my-element {\n\ntransition-property: opacity;\n\ntransition-duration: 0.5s;\n\ntransition-timing-function: cubic-bezier(0.17, 0.67, 0.83, 0.67);\n\n}\n<\/code><\/pre>\n<p>In diesem Snippet \u00e4ndert <code>.my-element <\/code>seine Deckkraft mit einer einzigartigen Geschwindigkeitskurve, die durch die Funktion <code>cubic-bezier<\/code> definiert wird. Diese Kurve gibt eine bestimmte Art von Bewegung vor, z. B. einen langsamen Beginn, eine Beschleunigung und eine Verlangsamung zum Ende hin.<\/p>\n<p>Wenn du <code>transition-timing-function<\/code> mit benutzerdefinierten Werten verwendest, kannst du deine Webelemente auf eine Art und Weise bewegen, die sich nat\u00fcrlicher, dynamischer oder einfach nur anders als der Standard anf\u00fchlt. Es ist ein gro\u00dfartiges Werkzeug, um deinen Webanimationen mehr Pers\u00f6nlichkeit und Finesse zu verleihen.<\/p>\n<p>Wenn es um fortgeschrittene Techniken geht, sind hier ein paar zu beachten:<\/p>\n<ol>\n<li><strong>Jonglieren mit mehreren Eigenschaften<\/strong>: Warum solltest du dich damit zufrieden geben, nur eine Sache zu animieren? Mit CSS kannst du mehrere Eigenschaften aneinanderreihen und sie alle auf einmal animieren. Das ist ideal, um deiner Animation mehrere Ebenen hinzuzuf\u00fcgen.<\/li>\n<li><strong>Synchronisierte Animationen<\/strong>: Du kannst auch verschiedene Eigenschaften aneinanderreihen, damit sie sich im gleichen Tempo bewegen und einen koordinierten Effekt erzeugen.<\/li>\n<li><strong>Verschachtelte \u00dcberg\u00e4nge<\/strong>: Wende \u00dcberg\u00e4nge auf Elemente innerhalb eines Containers an. Wenn du mit dem Container interagierst, verhalten sich die untergeordneten Elemente so, wie du es m\u00f6chtest.<\/li>\n<\/ol>\n<p>Achte darauf, dass diese Animationen nicht nur gut aussehen, sondern auch fl\u00fcssig laufen, besonders auf weniger leistungsstarken Ger\u00e4ten. Die Verwendung von Eigenschaften wie <code>transform<\/code> und <code>opacity<\/code> ist ein kluger Schachzug, weil sie die Browser schonen und die Leistung nicht zu stark beeintr\u00e4chtigen sollten.<\/p>\n<p>Au\u00dferdem wird dein Browser mit der Eigenschaft <code>will-change<\/code> vorgewarnt, damit er sich auf die Aktion vorbereiten kann und alles reibungslos l\u00e4uft.<\/p>\n<p>Ein letzter Hinweis, um sicherzustellen, dass alles funktioniert: Browser k\u00f6nnen w\u00e4hlerisch sein. Durch die Verwendung von Vendor-Pr\u00e4fixen kannst du sicherstellen, dass deine coolen \u00dcberg\u00e4nge in verschiedenen Browsern funktionieren. Das ist zwar ein bisschen mehr Arbeit, aber Tools wie <a href=\"https:\/\/autoprefixer.github.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Autoprefixer<\/a> k\u00f6nnen das f\u00fcr dich \u00fcbernehmen und sorgen daf\u00fcr, dass alles problemlos funktioniert.<\/p>\n<h2>Transformationen in CSS<\/h2>\n<p>CSS-Transformationen sind eine tolle M\u00f6glichkeit, dein Webdesign interessanter zu gestalten. Sie k\u00f6nnen nat\u00fcrlich auch dazu verwendet werden, Dinge zu verschieben, aber sie k\u00f6nnen auch das gesamte Erscheinungsbild einer Seite ver\u00e4ndern. Die Eigenschaft <code>transform<\/code> ist hier der Hauptakteur.<\/p>\n<p>Sie ist vielseitig und kann Elemente von einer Stelle zur anderen verschieben, z. B. ein Bild \u00fcber den Bildschirm schieben oder seine Gr\u00f6\u00dfe ver\u00e4ndern &#8211; z. B. indem du etwas n\u00e4her oder weiter weg zeigst, so wie du ein Foto vergr\u00f6\u00dferst oder verkleinerst. Und wenn du etwas ausgefallener sein willst, kannst du die Elemente sogar drehen lassen.<\/p>\n<p>Wirklich beeindruckend wird es, wenn du 3D-Transformationen in den Mix einbeziehst. Mit Funktionen wie <code>translate3d<\/code>, <code>scale3d<\/code> und <code>rotate3d<\/code> k\u00f6nnen Elemente aus dem Bildschirm herausspringen und so direkt im Browser ein noch intensiveres Erlebnis schaffen.<\/p>\n<p>Nimm zum Beispiel den Effekt der umgedrehten Karte. Dabei handelt es sich um eine tolle Funktion, bei der eine Seite einer Karte bestimmte Informationen zeigt und beim Umdrehen neue Inhalte auf der anderen Seite zum Vorschein kommen. Dieses interaktive Element kann die Aufmerksamkeit deiner Besucher\/innen wirklich fesseln.<\/p>\n<p>Der Schl\u00fcssel zu diesem Effekt ist die effektive Nutzung der Eigenschaft <code>backface-visibility<\/code>. Damit wird sichergestellt, dass die <a href=\"https:\/\/css-tricks.com\/almanac\/properties\/b\/backface-visibility\/\" target=\"_blank\" rel=\"noopener noreferrer\">R\u00fcckseite der Karte verborgen bleibt<\/a>, bis sie zu sehen ist.<\/p>\n<p>Aber warum hier aufh\u00f6ren? Wenn du diese Transformationen mit \u00dcberg\u00e4ngen und Animationen kombinierst, kannst du so viel mehr aus deinem CSS herausholen. Du kannst eine Schaltfl\u00e4che haben, die sich elegant vergr\u00f6\u00dfert, wenn du mit dem Mauszeiger dar\u00fcber f\u00e4hrst, oder ein Symbol, das sich spielerisch auf dem Bildschirm bewegt. Diese dynamischen Ver\u00e4nderungen verleihen deinen Webseitenelementen eine flie\u00dfende Qualit\u00e4t und machen das Nutzererlebnis noch interessanter.<\/p>\n<p>Designmodo bietet mehrere sch\u00f6ne Beispiele f\u00fcr diese Funktion. Zuerst siehst du das <a href=\"https:\/\/designmodo.com\/backface-visibility-css-animation\" target=\"_blank\" rel=\"noopener noreferrer\">CSS f\u00fcr 3D-Transformationen<\/a> aufgeschl\u00fcsselt. Dann kannst du <a href=\"https:\/\/designmodo.com\/demo\/backface-visibility\/index.html\" target=\"_blank\" rel=\"noopener noreferrer\">den Code in Aktion sehen<\/a>.<\/p>\n<figure id=\"attachment_173235\" aria-describedby=\"caption-attachment-173235\" style=\"width: 900px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-173235 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/01\/designmodo-spinning-donut.png\" alt=\"Designmodo Spinning Donut\" width=\"900\" height=\"395\"><figcaption id=\"caption-attachment-173235\" class=\"wp-caption-text\">Designmodo bietet ein gro\u00dfartiges Beispiel daf\u00fcr, wie 3D-Transformationen wunderbar funktionieren<\/figcaption><\/figure>\n<h2>Container-Abfragen<\/h2>\n<p>Container-Abfragen sind ein weiterer Aspekt von CSS, den du kennenlernen solltest. Mit ihnen kannst du Elemente basierend auf der Gr\u00f6\u00dfe ihres Containers stylen und nicht nur auf der gesamten Bildschirmgr\u00f6\u00dfe. Stell dir das so vor: Du hast eine Box und willst, dass die Elemente darin gut aussehen, egal wie gro\u00df oder klein die Box ist. Container-Abfragen sind daf\u00fcr perfekt geeignet.<\/p>\n<p>Sie sind sehr praktisch, wenn du m\u00f6chtest, dass verschiedene Teile deiner Webseite, wie Seitenleisten oder Karten, ihr Aussehen \u00e4ndern, je nachdem wie viel Platz sie haben. Jede Komponente kann <a href=\"https:\/\/www.smashingmagazine.com\/2023\/07\/writing-css-2023\/\" target=\"_blank\" rel=\"noopener noreferrer\">ihren eigenen Stil bestimmen<\/a>, unabh\u00e4ngig vom Rest der Seite.<\/p>\n<p>Hier ist eine kurze \u00dcbersicht, wie du sie verwenden kannst:<\/p>\n<ul>\n<li>Richte <strong>den Container ein<\/strong>: Zuerst musst du CSS mitteilen, welcher Teil deiner Seite ein Container ist. Das tust du mit Eigenschaften wie <code>container-type<\/code> und <code>container-name<\/code>.<\/li>\n<li><strong>Schreibe deine Abfragen<\/strong>: Genau wie Media Queries, aber f\u00fcr Container. Du schreibst eine Regel, die besagt: &#8222;Hey, wenn mein Container mindestens so breit ist, dann mach diese Stil\u00e4nderungen.&#8220;<\/li>\n<\/ul>\n<p>So w\u00fcrde der grundlegende Code daf\u00fcr aussehen:<\/p>\n<pre><code class=\"language-css\">@container (min-width: 300px) {\n\n.component {\n\n\/* styles *\/\n\n}\n\n}<\/code><\/pre>\n<p>In diesem Beispiel werden die Stile der Klasse <code>.component<\/code> angewendet, wenn der Container eine Mindestbreite von 300px erreicht.<\/p>\n<p>Container-Abfragen k\u00f6nnen in verschiedenen Szenarien verwendet werden, wie z. B.:<\/p>\n<ul>\n<li><strong>Responsive Seitenleisten und Fu\u00dfzeilen<\/strong>: Anpassen der Breite und des Layouts von Seitenleisten oder Fu\u00dfzeilen auf der Grundlage der Containergr\u00f6\u00dfe.<\/li>\n<li><strong>Responsive Karten<\/strong>: \u00c4ndern des Layouts oder Stils von Karten in einem Grid- oder Flexbox-Layout auf der Grundlage der Breite ihres Containers.<\/li>\n<\/ul>\n<p>Obwohl Container-Queries von den wichtigsten Browsern wie Chrome, Firefox, Safari und Edge unterst\u00fctzt werden, empfiehlt es sich, sie als progressive Verbesserung zu verwenden. Beginne mit grundlegenden Stilen f\u00fcr nicht unterst\u00fctzende Browser und verbessere sie f\u00fcr diejenigen, die Container-Queries unterst\u00fctzen.<\/p>\n<h2>Flexbox f\u00fcr die vertikale Ausrichtung verwenden<\/h2>\n<p><a href=\"https:\/\/web.dev\/learn\/css\/flexbox\" target=\"_blank\" rel=\"noopener noreferrer\">Flexbox<\/a> ist ein unglaublich praktisches Werkzeug in CSS, besonders wenn es um die vertikale Ausrichtung geht. Es gibt es zwar schon eine Weile, aber es ist immer noch sehr wichtig, vor allem f\u00fcr die Ausrichtung von Elementen entlang der Querachse (die je nach Layout vertikal sein kann).<\/p>\n<h3>Verwendung von align-items f\u00fcr die vertikale Ausrichtung<\/h3>\n<p>Die Eigenschaft <code>align-items<\/code> in Flexbox ist das Mittel der Wahl, um Elemente innerhalb eines Containers vertikal auszurichten. Sie funktioniert, wenn dein Flexbox-Container eine <code>flex-direction<\/code> an Zeilen hat. Mit dieser Eigenschaft kannst du steuern, wie alle Children eines Flexcontainers entlang der Querachse ausgerichtet werden.<\/p>\n<p>Wenn du z. B. eine Reihe von Elementen in einem Flexcontainer hast und sie alle vertikal zentriert haben m\u00f6chtest, verwendest du <code>align-items: center;<\/code>. Hier sind die wichtigsten Optionen, die du mit <code>align-items<\/code> hast:<\/p>\n<ul>\n<li><code>flex-start<\/code>: Richtet die Artikel am Anfang des Containers aus.<\/li>\n<li><code>flex-end<\/code>: Richtet die Artikel am Ende des Containers aus.<\/li>\n<li><code>center<\/code>: Zentriert die Objekte im Container.<\/li>\n<li><code>baseline<\/code>: Richtet die Objekte auf der Basis ihrer Grundlinie aus.<\/li>\n<li><code>stretch<\/code>: Dehnt die Objekte so, dass sie den Container ausf\u00fcllen (Standardverhalten).<\/li>\n<\/ul>\n<h3>Align-self f\u00fcr individuelle Kontrolle verwenden<\/h3>\n<p><code>align-items<\/code> eignet sich zwar hervorragend, um alle Elemente in einem Container auszurichten, aber manchmal m\u00f6chtest du nur ein einzelnes Element anders ausrichten. Deshalb ist <code>align-self<\/code> so n\u00fctzlich. Mit dieser Eigenschaft kannst du den Wert <code>align-items<\/code> f\u00fcr einzelne Flex-Elemente au\u00dfer Kraft setzen. Sie akzeptiert die gleichen Werte wie <code>align-items<\/code>.<\/p>\n<p>Angenommen, du hast einen Flex-Container mit <code>align-items: center;<\/code>, aber es gibt ein Element, das du am Anfang ausrichten m\u00f6chtest. Dann kannst du <code>align-self: flex-start;<\/code> auf dieses spezielle Element anwenden. Auf diese Weise kannst du die Ausrichtung der einzelnen Elemente genau steuern.<\/p>\n<p>Am hilfreichsten ist es jedoch, dies in Aktion zu sehen.<\/p>\n<p>Nehmen wir an, du entwirfst eine Navigationsleiste mit einem Logo, einigen Links und einer Suchleiste. Du m\u00f6chtest, dass die Links zentriert sind, das Logo oben und die Suchleiste unten ausgerichtet ist.<\/p>\n<p>So k\u00f6nntest du es machen:<\/p>\n<pre><code class=\"language-css\">.nav-container {\n\ndisplay: flex;\n\nflex-direction: row;\n\nalign-items: center;\n\n}\n\n.logo {\n\nalign-self: flex-start;\n\n}\n\n.search-bar {\n\nalign-self: flex-end;\n\n}<\/code><\/pre>\n<p>In diesem Beispiel ist <code>.nav-container<\/code> ein Flex-Container, dessen Elemente im Allgemeinen zentriert sind. Das Logo und die Suchleiste weichen jedoch von dieser allgemeinen Regel ab und richten sich am Anfang bzw. am Ende des Containers aus.<\/p>\n<h2>Moderne Farbfunktionen in CSS<\/h2>\n<p>Die modernen Farbfunktionen in CSS haben sich erheblich weiterentwickelt und bieten ausgefeiltere M\u00f6glichkeiten, Farben im Webdesign zu definieren und zu manipulieren. Schauen wir uns einige dieser Funktionen genauer an:<\/p>\n<h3>1. rgb() und rgba()<\/h3>\n<p>Die Funktion <code>rgb()<\/code> ist eine traditionelle Methode, um Farben mit den Kan\u00e4len Rot, Gr\u00fcn und Blau zu definieren. Jeder Kanal kann einen Wert zwischen 0 und 255 annehmen. Die Variante <code>rgba()<\/code> f\u00fcgt einen Alphakanal f\u00fcr die Deckkraft hinzu, wobei 1 f\u00fcr vollst\u00e4ndig undurchsichtig und 0 f\u00fcr vollst\u00e4ndig transparent steht.<\/p>\n<p>Das sollte in etwa so aussehen:<\/p>\n<pre><code class=\"language-css\">.example {\n\ncolor: rgb(255, 0, 0); \/* Red *\/\n\nbackground-color: rgba(255, 0, 0, 0.5); \/* Semi-transparent red *\/\n\n}<\/code><\/pre>\n<h3>2. hsl() und hsla()<\/h3>\n<p><code>hsl()<\/code> stellt Farben in Form von Farbton, S\u00e4ttigung und Helligkeit dar, was die Auswahl von Farbvarianten intuitiver macht. Wie <code>rgba()<\/code> enth\u00e4lt auch <code>hsla()<\/code> einen Alphakanal f\u00fcr die Deckkraft. Zum Beispiel so:<\/p>\n<pre><code class=\"language-css\">.example {\n\ncolor: hsl(120, 100%, 50%); \/* Green *\/\n\nbackground-color: hsla(120, 100%, 50%, 0.3); \/* Semi-transparent green *\/\n\n}<\/code><\/pre>\n<h3>3. oklch() und oklab()<\/h3>\n<p><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/color_value\/oklch\"><code>oklch()<\/code><\/a> und <code>oklab()<\/code> sind neuere Erg\u00e4nzungen der CSS-Farbfunktionen. Sie basieren auf dem <a href=\"https:\/\/www.hunterlab.com\/blog\/what-is-cielab-color-space\/\" target=\"_blank\" rel=\"noopener noreferrer\">CIELAB-Farbraum<\/a>, der so konzipiert ist, dass er f\u00fcr die Wahrnehmung einheitlich ist. Das bedeutet, dass \u00c4nderungen der Farbwerte eher den vom menschlichen Auge wahrgenommenen \u00c4nderungen entsprechen.<\/p>\n<p>Konkret bedeutet dies:<\/p>\n<ul>\n<li><code>oklab()<\/code> der CIELAB-Farbraum wird f\u00fcr die Definition von Farben in einem wahrnehmungsm\u00e4\u00dfig einheitlichen Raum verwendet.<\/li>\n<li><code>oklch()<\/code> ist \u00e4hnlich, verwendet aber zylindrische Koordinaten (Helligkeit, Chroma und Farbton).<\/li>\n<\/ul>\n<p>Diese Funktionen erm\u00f6glichen eine genauere und intuitivere Farbmanipulation, vor allem bei Aufgaben wie der Erstellung sanfter Farbverl\u00e4ufe. So k\u00f6nnte das in Codeform aussehen:<\/p>\n<pre><code class=\"language-css\">.example {\n\ncolor: oklch(75%, 0.25, 250); \/* A color in oklch *\/\n\nbackground-color: oklab(0.623, 0.172, -0.079); \/* A color in oklab *\/\n\n}<\/code><\/pre>\n<h3>Implementierung von fortgeschrittenen Farbschemata<\/h3>\n<p>Mit diesen Funktionen, insbesondere den fortgeschrittenen <code>oklch()<\/code> und <code>oklab()<\/code>, kannst du komplizierte Farbschemata implementieren, die visuell konsistent und ansprechend sind. Sie bieten mehr Kontrolle dar\u00fcber, wie Farben dargestellt und wahrgenommen werden, und stellen sicher, dass deine Designs sowohl \u00e4sthetisch ansprechend als auch zug\u00e4nglich sind.<\/p>\n<p>Wenn du diese Farbfunktionen mit CSS-Funktionen wie benutzerdefinierten Eigenschaften (CSS-Variablen) und Berechnungen kombinierst, kannst du dynamische und flexible Farbsysteme entwickeln, die sich an verschiedene Themes, Zust\u00e4nde und Umgebungen anpassen.<\/p>\n<p>Da sich die Webstandards und die Browserunterst\u00fctzung f\u00fcr diese Funktionen st\u00e4ndig \u00e4ndern, kann die Nutzung dieser modernen Farbfunktionen das visuelle Design und die Benutzerfreundlichkeit deiner Webprojekte erheblich verbessern.<\/p>\n<h2>Text um Bilder herum biegen<\/h2>\n<p>Die CSS-Eigenschaft <code>shape-outside<\/code> bietet eine kreative M\u00f6glichkeit, <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/shape-outside\" target=\"_blank\" rel=\"noopener noreferrer\">Text um Bilder zu wickeln<\/a>, was zu dynamischeren und visuell interessanteren Layouts und fortschrittlicherem <a href=\"https:\/\/kinqsta.com\/de\/blog\/css-image-styling\/\">Bildstyling<\/a> beitr\u00e4gt.<\/p>\n<p>Damit kannst du eine Form definieren, um die sich der Inline-Inhalt wickeln soll. Dies ist n\u00fctzlich, um Text in einer nicht-rechteckigen Form um Bilder zu legen und Layouts zu erstellen, die organischer und visuell ansprechender sind als der standardm\u00e4\u00dfige rechteckige Textumbruch.<\/p>\n<h3>Wie funktioniert das?<\/h3>\n<p>Du kannst verschiedene Formen wie Kreise, Ellipsen und Polygone definieren oder sogar den Alphakanal eines Bildes verwenden, um die Form zu bestimmen.<\/p>\n<p>Die Eigenschaft <code>shape-outside<\/code> gilt normalerweise f\u00fcr schwebende Elemente. Wenn du ein Bild schwebend anordnest und <code>shape-outside<\/code> anwendest, wird der Text entsprechend der festgelegten Form um das Bild herumgef\u00fchrt.<\/p>\n<p>Hier ist ein einfaches Beispiel f\u00fcr die Verwendung von shape-outside mit einem Kreis:<\/p>\n<pre><code class=\"language-css\">.image {\n\nfloat: left;\n\nshape-outside: circle(50%);\n\nwidth: 200px;\n\nheight: 200px;\n\nmargin-right: 15px;\n\n}<\/code><\/pre>\n<p>In diesem Beispiel wird die Klasse <code>.image<\/code> auf ein Bildelement angewendet. Es wird nach links verschoben, und <code>shape-outside: circle(50%);<\/code> erzeugt eine Kreisform, um die sich der Text wickeln wird. Wenn du <code>shape-outside<\/code> effektiv einsetzt, er\u00f6ffnen sich dir neue M\u00f6glichkeiten f\u00fcr deine Designs, denn damit kann der Text um komplexe Formen herumflie\u00dfen, was magazin\u00e4hnliche Layouts und visuell ansprechende Webseiten erm\u00f6glicht.<\/p>\n<h2>CSS-Misch-Modi<\/h2>\n<p>CSS-Misch-Modi bieten eine leistungsstarke M\u00f6glichkeit, Farben und Bilder zu mischen und so einzigartige visuelle Effekte zu erzeugen, die dein Design aufwerten k\u00f6nnen. Mit diesen Misch-Modi kannst du ansprechende Texteffekte, Bild\u00fcberlagerungen und komplizierte Hintergrundmuster erstellen. Um <code>background-blend-mode<\/code> zu verwenden, lass uns zuerst dar\u00fcber sprechen, was sie tut. Mit dieser Eigenschaft kannst du festlegen, wie die Hintergrundbilder und -farben eines Elements ineinander \u00fcbergehen sollen. Wenn du zum Beispiel ein Hintergrundbild und eine Hintergrundfarbe hast, kannst du sie mit verschiedenen Misch-Modi wie Multiplizieren, Raster, \u00dcberlagern usw. \u00fcberblenden. So k\u00f6nnte der Code aussehen:<\/p>\n<pre><code class=\"language-css\">.element {\n\nbackground-image: url('image.jpg');\n\nbackground-color: blue;\n\nbackground-blend-mode: multiply;\n\n}<\/code><\/pre>\n<p>Bei <code>mix-blend-mode<\/code> wird der Inhalt eines Elements (einschlie\u00dflich Bilder und Text) mit seinem Hintergrund \u00fcberblendet. Das ist besonders n\u00fctzlich f\u00fcr <a href=\"https:\/\/kinqsta.com\/de\/blog\/css-text-umriss\/\">Texteffekte<\/a> oder das \u00dcberlagern eines Bildes \u00fcber ein anderes. Zum Beispiel so:<\/p>\n<pre><code class=\"language-css\">&lt;\n\n.element {\n\nmix-blend-mode: screen;\n\n}<\/code><\/pre>\n<h3>Beliebte Misch-Modi<\/h3>\n<p>Hier sind ein paar der beliebtesten Misch-Modi, die du kennen musst, um diesen Effekt richtig zu nutzen:<\/p>\n<ul>\n<li><strong>Multiplizieren<\/strong>: Multipliziert die Farben der \u00dcberblendebene und der Basisebene, was zu einer dunkleren Farbe f\u00fchrt.<\/li>\n<li><strong>Abblenden<\/strong>: Macht die Farben heller, im Gegensatz zum Multiplizieren. Sie ist n\u00fctzlich, um Lichteffekte zu erzeugen.<\/li>\n<li><strong>\u00dcberlagern<\/strong>: Kombiniert die Misch-Modi Multiplizieren und Raster. Helle Teile des Bildes werden heller und dunkle Teile werden dunkler.<\/li>\n<li><strong>Verdunkeln und Aufhellen<\/strong>: W\u00e4hlt die dunklere bzw. hellere Farbe aus.<\/li>\n<li><strong>Farbe abwedeln und Farbe verbrennen<\/strong>: Hellt die Grundfarbe auf oder verdunkelt sie, um die \u00dcberblendfarbe wiederzugeben.<\/li>\n<li><strong>Differenz und Ausschluss<\/strong>: Dient zum Erstellen k\u00fcnstlerischer und invertierter Farbeffekte.<\/li>\n<\/ul>\n<h2>Anpassen an die Vorlieben der Nutzer<\/h2>\n<p>Die Anpassung an die Vorlieben der Nutzerinnen und Nutzer im Webdesign ist ein wichtiger Aspekt bei der Erstellung barrierefreier und benutzerfreundlicher Websites. CSS-Medienabfragen f\u00fcr Voreinstellungen wie <a href=\"https:\/\/www.smashingmagazine.com\/2023\/07\/writing-css-2023\/\"><code>prefers-color-scheme<\/code><\/a> und <code>prefers-reduced-motion<\/code> spielen eine wichtige Rolle bei diesem Prozess.<\/p>\n<p>Schauen wir uns diese Konzepte an.<\/p>\n<h3>prefers-color-scheme<\/h3>\n<p>Diese Medienabfrage wird verwendet, um zu erkennen, ob der Nutzer ein helles oder dunkles Farbschema gew\u00fcnscht hat. Das ist eine praktische Methode, um einen dunklen Modus in das Design einer Website zu integrieren.<\/p>\n<p>Du kannst <code>prefers-color-scheme<\/code> verwenden, um unterschiedliche Stile f\u00fcr helle und dunkle Modi festzulegen.<\/p>\n<p>Zum Beispiel:<\/p>\n<pre><code class=\"language-css\">\/* Default light mode styles *\/\n\nbody {\n\nbackground-color: white;\n\ncolor: black;\n\n}\n\n\/* Dark mode styles *\/\n\n@media (prefers-color-scheme: dark) {\n\nbody {\n\nbackground-color: black;\n\ncolor: white;\n\n}\n\n}<\/code><\/pre>\n<p>In diesem Schnipsel gelten die Standardstile f\u00fcr den hellen Modus, w\u00e4hrend die Stile innerhalb der <code>@media<\/code> Abfrage gelten, wenn der Nutzer ein dunkles Farbschema bevorzugt.<\/p>\n<h3>prefers-reduced-motion<\/h3>\n<p>Diese Medienabfrage dient dazu, zu erkennen, ob der\/die Nutzer\/in das System aufgefordert hat, die Anzahl der verwendeten Animationen oder Bewegungen zu reduzieren. Sie ist wichtig f\u00fcr Nutzer, die unter Motion Sickness oder Gleichgewichtsst\u00f6rungen leiden.<\/p>\n<p>Du kannst <code>prefers-reduced-motion<\/code> verwenden, um Animationen und \u00dcberg\u00e4nge zu reduzieren oder zu entfernen:<\/p>\n<pre><code class=\"language-css\">\/* Standard animations *\/\n\n.animate {\n\ntransition: transform 0.3s ease;\n\n}\n\n\/* Reduced motion *\/\n\n@media (prefers-reduced-motion: reduce) {\n\n.animate {\n\ntransition: none;\n\n}\n\n}<\/code><\/pre>\n<p>Hier siehst du, dass die Animationen deaktiviert sind, wenn der\/die Nutzer\/in angegeben hat, dass er\/sie weniger Bewegung w\u00fcnscht.<\/p>\n<p>Die Integration von <code>prefers-color-scheme<\/code> und <code>prefers-reduced-motion<\/code> in dein CSS ist ein Schritt hin zu einem inklusiveren und benutzerfreundlicheren Web, der sicherstellt, dass deine Website f\u00fcr eine Vielzahl von Benutzern mit unterschiedlichen Bed\u00fcrfnissen und Vorlieben zug\u00e4nglich und komfortabel ist.<\/p>\n<h2>Pseudoselektoren :is() und :where() verwenden<\/h2>\n<p>Die Pseudoselektoren <code>:is()<\/code> und <code>:where()<\/code> in CSS sind fortschrittliche Werkzeuge, um Spezifit\u00e4t zu verwalten und komplexe Selektorketten zu vereinfachen. Wir werden uns ansehen, wie sie funktionieren, und uns einige Beispiele aus der Praxis ansehen.<\/p>\n<h3>:is()-Pseudoselektor<\/h3>\n<p>Mit diesem Selektor kannst du mehrere Elemente mit einer einzigen Regel ansprechen und die Wiederholung \u00e4hnlicher Selektoren reduzieren. Die Spezifit\u00e4t der Pseudoklasse <code>:is()<\/code> entspricht der Spezifit\u00e4t des spezifischsten Selektors in seinen Argumenten.<\/p>\n<pre><code class=\"language-css\">\/* Selects any paragraph or heading inside an article *\/\n\narticle :is(h1, h2, h3, p) {\n\ncolor: blue;\n\n}<\/code><\/pre>\n<h3>:where()-Pseudoselektor<\/h3>\n<p>Dieser Pseudoselektor ist \u00e4hnlich wie <code>:is()<\/code>, hat aber einen entscheidenden Unterschied. <code>:where()<\/code> hat immer eine Spezifit\u00e4t von Null. Das macht ihn n\u00fctzlich, um Stile au\u00dfer Kraft zu setzen, ohne die Spezifit\u00e4t zu erh\u00f6hen. In der Anwendung k\u00f6nnte er etwa so aussehen:<\/p>\n<pre><code class=\"language-css\">\/* Selects any paragraph or heading, but with no added specificity *\/\n\n:where(article, section) p {\n\nmargin-bottom: 1em;\n\n}<\/code><\/pre>\n<p>Mit <code>:is()<\/code> und <code>:where()<\/code> kannst du flexiblere und leichter zu wartende Stylesheets erstellen, vor allem wenn du mit komplexen Designs arbeitest. Diese Pseudo-Selektoren k\u00f6nnen zum Beispiel n\u00fctzlich sein, wenn du folgendes bewerkstelligen willst:<\/p>\n<ul>\n<li><strong>Verschachtelte Selektoren vereinfachen<\/strong>: Pseudo-Selektoren k\u00f6nnen tief verschachtelte Selektoren oder gruppierte Selektoren vereinfachen, so dass dein CSS lesbarer und leichter zu pflegen ist.<\/li>\n<li><strong>Stile \u00fcberschreiben<\/strong>: <code>:where()<\/code> eignet sich hervorragend, um Basisstile zu erstellen, die einfach \u00fcberschrieben werden k\u00f6nnen, ohne dass du dir Gedanken \u00fcber die Spezifit\u00e4t machen musst.<\/li>\n<li><strong>Stile wiederverwenden<\/strong>: Beide Pseudoselektoren erm\u00f6glichen modularere und wiederverwendbare Stile, da du verschiedene Elemente unter einer einzigen Regel zusammenfassen kannst.<\/li>\n<\/ul>\n<p>Stell dir ein Navigationsmen\u00fc mit verschiedenen Abschnitten vor, um dies in der Praxis zu zeigen. Du kannst <code>:is()<\/code> verwenden, um alle Links im Men\u00fc unabh\u00e4ngig von ihrer Verschachtelungsebene einheitlich zu gestalten, wie folgt:<\/p>\n<pre><code class=\"language-css\">nav :is(ul, ol, div) &gt; li &gt; a {\n\npadding: 10px;\n\ncolor: white;\n\n}<\/code><\/pre>\n<h2>Zusammenfassung<\/h2>\n<p>Von der Eleganz der CSS-\u00dcberg\u00e4nge, die Benutzeroberfl\u00e4chen zum Leben erwecken, bis hin zu den M\u00f6glichkeiten von 3D-Transformationen hast du jetzt hoffentlich ein besseres Verst\u00e4ndnis f\u00fcr einige der fortgeschrittenen CSS-Techniken, die dir in 2026 und dar\u00fcber hinaus zur Verf\u00fcgung stehen.<\/p>\n<p>Dieser Leitfaden beleuchtet diese fortgeschrittenen Techniken und unterstreicht ihre Bedeutung f\u00fcr die Erstellung von reaktionsschnellen, benutzerfreundlichen und optisch ansprechenden Webdesigns. Egal, f\u00fcr welche Technik du dich entscheidest, vergiss nicht, bei allem, was du tust, Barrierefreiheit und <a href=\"https:\/\/kinqsta.com\/de\/blog\/optimieren-css\/\">CSS-Leistung<\/a> in den Vordergrund zu stellen.<\/p>\n<p>Nutzt du eine dieser fortschrittlichen CSS-Techniken? Hast du Empfehlungen f\u00fcr andere, die du ausprobieren solltest? Lass es uns wissen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bei CSS geht es nicht mehr nur darum, Websites h\u00fcbsch aussehen zu lassen. Es hat sich zu einem Werkzeug entwickelt, das Websites mit Bewegungen und Interaktionen &#8230;<\/p>\n","protected":false},"author":199,"featured_media":68403,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[990,988],"class_list":["post-68402","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-webentwicklung-sprachen","topic-webdesign"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Fortgeschrittene CSS-Techniken beherrschen - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Beherrschung fortgeschrittener CSS-Techniken: ein tiefer Einblick in \u00dcberg\u00e4nge, Animationen und Transformationen\" \/>\n<meta property=\"og:description\" content=\"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-01-22T11:07:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-24T12:16:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jeremy Holcombe\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@Kinsta_DE\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_DE\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Holcombe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"14\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/\"},\"author\":{\"name\":\"Jeremy Holcombe\",\"@id\":\"https:\/\/kinqsta.com\/de\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\"},\"headline\":\"Beherrschung fortgeschrittener CSS-Techniken: ein tiefer Einblick in \u00dcberg\u00e4nge, Animationen und Transformationen\",\"datePublished\":\"2024-01-22T11:07:45+00:00\",\"dateModified\":\"2024-01-24T12:16:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/\"},\"wordCount\":3023,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/de\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg\",\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/\",\"url\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/\",\"name\":\"Fortgeschrittene CSS-Techniken beherrschen - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg\",\"datePublished\":\"2024-01-22T11:07:45+00:00\",\"dateModified\":\"2024-01-24T12:16:01+00:00\",\"description\":\"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage\",\"url\":\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg\",\"contentUrl\":\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg\",\"width\":1200,\"height\":628},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinqsta.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Webdesign\",\"item\":\"https:\/\/kinqsta.com\/de\/thema\/webdesign\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Beherrschung fortgeschrittener CSS-Techniken: ein tiefer Einblick in \u00dcberg\u00e4nge, Animationen und Transformationen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinqsta.com\/de\/#website\",\"url\":\"https:\/\/kinqsta.com\/de\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Schnelle, sichere und hochwertige Hosting-L\u00f6sungen\",\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/de\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinqsta.com\/de\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinqsta.com\/de\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinqsta.com\/de\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinqsta.com\/de\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/de\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/\",\"https:\/\/x.com\/Kinsta_DE\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinqsta.com\/de\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\",\"name\":\"Jeremy Holcombe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinqsta.com\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"caption\":\"Jeremy Holcombe\"},\"description\":\"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/jeremyholcombe\/\"],\"url\":\"https:\/\/kinqsta.com\/de\/blog\/author\/jeremyholcombe\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Fortgeschrittene CSS-Techniken beherrschen - Kinsta\u00ae","description":"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/","og_locale":"de_DE","og_type":"article","og_title":"Beherrschung fortgeschrittener CSS-Techniken: ein tiefer Einblick in \u00dcberg\u00e4nge, Animationen und Transformationen","og_description":"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.","og_url":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/","article_published_time":"2024-01-22T11:07:45+00:00","article_modified_time":"2024-01-24T12:16:01+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg","type":"image\/jpeg"}],"author":"Jeremy Holcombe","twitter_card":"summary_large_image","twitter_description":"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.","twitter_image":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg","twitter_creator":"@Kinsta_DE","twitter_site":"@Kinsta_DE","twitter_misc":{"Verfasst von":"Jeremy Holcombe","Gesch\u00e4tzte Lesezeit":"14\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#article","isPartOf":{"@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/"},"author":{"name":"Jeremy Holcombe","@id":"https:\/\/kinqsta.com\/de\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21"},"headline":"Beherrschung fortgeschrittener CSS-Techniken: ein tiefer Einblick in \u00dcberg\u00e4nge, Animationen und Transformationen","datePublished":"2024-01-22T11:07:45+00:00","dateModified":"2024-01-24T12:16:01+00:00","mainEntityOfPage":{"@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/"},"wordCount":3023,"commentCount":0,"publisher":{"@id":"https:\/\/kinqsta.com\/de\/#organization"},"image":{"@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg","inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/","url":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/","name":"Fortgeschrittene CSS-Techniken beherrschen - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinqsta.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage"},"image":{"@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg","datePublished":"2024-01-22T11:07:45+00:00","dateModified":"2024-01-24T12:16:01+00:00","description":"Diese Sammlung fortgeschrittener CSS-Techniken hilft dir, deine Designs zu optimieren, indem du \u00fcber die Grundlagen hinausgehst.","breadcrumb":{"@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#primaryimage","url":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg","contentUrl":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/01\/wp-advanced-css-techniques.jpg","width":1200,"height":628},{"@type":"BreadcrumbList","@id":"https:\/\/kinqsta.com\/de\/blog\/fortgeschrittene-css-techniken\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinqsta.com\/de\/"},{"@type":"ListItem","position":2,"name":"Webdesign","item":"https:\/\/kinqsta.com\/de\/thema\/webdesign\/"},{"@type":"ListItem","position":3,"name":"Beherrschung fortgeschrittener CSS-Techniken: ein tiefer Einblick in \u00dcberg\u00e4nge, Animationen und Transformationen"}]},{"@type":"WebSite","@id":"https:\/\/kinqsta.com\/de\/#website","url":"https:\/\/kinqsta.com\/de\/","name":"Kinsta\u00ae","description":"Schnelle, sichere und hochwertige Hosting-L\u00f6sungen","publisher":{"@id":"https:\/\/kinqsta.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinqsta.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/kinqsta.com\/de\/#organization","name":"Kinsta","url":"https:\/\/kinqsta.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinqsta.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinqsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinqsta.com\/de\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/","https:\/\/x.com\/Kinsta_DE","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinqsta.com\/de\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21","name":"Jeremy Holcombe","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinqsta.com\/de\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","caption":"Jeremy Holcombe"},"description":"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.","sameAs":["https:\/\/www.linkedin.com\/in\/jeremyholcombe\/"],"url":"https:\/\/kinqsta.com\/de\/blog\/author\/jeremyholcombe\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/posts\/68402","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/users\/199"}],"replies":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/comments?post=68402"}],"version-history":[{"count":4,"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/posts\/68402\/revisions"}],"predecessor-version":[{"id":68423,"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/posts\/68402\/revisions\/68423"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/en"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/es"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/translations\/it"},{"href":"https:\/\/kinqsta.com\/de\/wp-json\/kinsta\/v1\/posts\/68402\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/media\/68403"}],"wp:attachment":[{"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/media?parent=68402"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/tags?post=68402"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinqsta.com\/de\/wp-json\/wp\/v2\/topic?post=68402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}