Heim > Web-Frontend > CSS-Tutorial > CSS hat sich für immer verändert: evolutionäre Funktionen, die Sie kennen müssen

CSS hat sich für immer verändert: evolutionäre Funktionen, die Sie kennen müssen

DDD
Freigeben: 2024-12-05 19:57:12
Original
384 Leute haben es durchsucht

CSS Just Changed Forever: evolutionary Features You Need to Know

Als Webentwickler haben wir alle diese Momente der Frustration im Umgang mit CSS erlebt. Von der Zentrierung von Divs bis hin zur Verwaltung von Dark-Mode-Übergängen war CSS in der Vergangenheit eine Quelle unzähliger Entwickler-Kopfschmerzen. Aber die Landschaft verändert sich. Mit seinem jüngsten großen Update und einem schönen neuen Logo in Rebecca Purple tritt CSS in eine neue Ära leistungsstarker, entwicklerfreundlicher Funktionen ein.

? Erhalten Sie wöchentlich CSS-Tipps, Code-Snippets und Tutorials direkt in Ihren Posteingang – 100 % kostenlos!

Die Bedeutung von Rebecca Purple

Bevor wir uns mit den neuen Funktionen befassen, lohnt es sich, die rührende Geschichte hinter der Farbe des neuen CSS-Logos zu erwähnen. Rebecca Purple ist nicht nur ein weiterer Farbname – er hat in der Webentwicklungs-Community eine tiefgreifende Bedeutung. Benannt nach Rebecca Meyer, der Tochter des CSS-Pioniers Eric Meyer, dient diese Farbe als bleibende Hommage. Rebecca, die im Alter von sechs Jahren darauf bestand, mit ihrem vollen Namen angesprochen zu werden, verstarb kurz darauf. Ihre Erinnerung lebt durch diese Standard-CSS-Farbe weiter, die wahrscheinlich noch Jahrhunderte lang Teil der Grundlage des Webs sein wird.

1. Richten Sie Inhalte ohne Komplexität aus

Erinnern Sie sich an all die Memes über die Zentrierung eines Div? Sie sind mittlerweile veraltet. Die neue Eigenschaft „align-content“ funktioniert direkt in jedem Blocklayout, keine Flexbox oder kein Raster erforderlich. Es ist fast überraschend, dass die Implementierung einer so grundlegenden Funktion 25 Jahre gedauert hat, aber besser spät als nie.

.centered-content {
    align-content: center;  /* That's it! No flexbox or grid needed */
    block-size: 100vh;
}
Nach dem Login kopieren
Nach dem Login kopieren

2. Typisierte CSS-Variablen mit @property

Die @property-Regel ist Teil von CSS Houdini und verändert die Variablenverarbeitung grundlegend. Bisher wurden CSS-Variablen als einfache Zeichenfolgen interpretiert, was ihr Animationspotenzial einschränkte. Jetzt können Sie Variablentypen wie Zahl, Farbe oder Prozentsatz angeben und so sichereren Code und anspruchsvollere Animationen ermöglichen.

/* Old way - limited animation capabilities */
:root {
    --gradient-stop: 50%;
}

/* New way - fully animatable */
@property --gradient-stop {
    syntax: '<percentage>';
    initial-value: 0%;
    inherits: false;
}

.gradient {
    background: linear-gradient(90deg, blue var(--gradient-stop), red);
    transition: --gradient-stop 0.3s;
}

.gradient:hover {
    --gradient-stop: 75%;
}
Nach dem Login kopieren
Nach dem Login kopieren

3. Startstil: Bessere erste Eindrücke

Die neue @starting-style-Regel löst eine häufige Animationsherausforderung. Wenn mit display: none ausgeblendete Elemente sichtbar werden, werden ihre Eintrittsanimationen häufig nicht ausgelöst. Mit dieser Regel können Sie anfängliche Stile für Elemente definieren, wenn diese zum ersten Mal gerendert werden, perfekt für Dialoge, Popovers und andere dynamische Inhalte.

.dialog {
    display: none;
    transform: translateY(0);
    opacity: 1;
    transition: transform 0.3s, opacity 0.3s;
}

@starting-style {
    .dialog {
        transform: translateY(20px);
        opacity: 0;
    }
}

.dialog.open {
    display: block;  /* Will now animate smoothly from the starting style */
}
Nach dem Login kopieren

4. Erweiterte mathematische Fähigkeiten

CSS entwickelt sich weiter zu einer leistungsstarken Stilsprache mit neuen mathematischen Funktionen:

.mathematical {
    /* Rounding numbers */
    width: round(45.6px);           /* 46px */
    height: round(down, 45.6px);    /* 45px */
    margin: round(up, 45.6px);      /* 46px */

    /* Remainder operations */
    padding: rem(17, 5);            /* 2 (remainder of 17÷5) */
    gap: mod(17, 5);               /* Same as rem() */
}
Nach dem Login kopieren

5. Vereinfachter Dunkelmodus mit hell-dunkel()

Die Implementierung des Dunkelmodus wird mit der Funktion light-dark() einfacher. Mit dieser Funktion können Sie ohne Medienabfragen unterschiedliche Werte für helle und dunkle Farbschemata angeben.

6. Intelligentere Formularvalidierungsstile

Formularvalidierung UX verbessert sich mit den neuen benutzergültigen und benutzerungültigen Pseudoklassen. Im Gegensatz zu ihren Vorgängern (:valid und :invalid) werden diese erst nach Benutzerinteraktion ausgelöst und verhindern so vorzeitige Fehlermeldungen.

.centered-content {
    align-content: center;  /* That's it! No flexbox or grid needed */
    block-size: 100vh;
}
Nach dem Login kopieren
Nach dem Login kopieren

7. Animationsdurchbruch mit Interpolationsgröße

Die vielleicht aufregendste Ergänzung ist die Eigenschaft „Größe interpolieren“. Es löst die seit langem bestehende Herausforderung, Elemente mit dynamischen Höhen zu animieren.

/* Old way - limited animation capabilities */
:root {
    --gradient-stop: 50%;
}

/* New way - fully animatable */
@property --gradient-stop {
    syntax: '<percentage>';
    initial-value: 0%;
    inherits: false;
}

.gradient {
    background: linear-gradient(90deg, blue var(--gradient-stop), red);
    transition: --gradient-stop 0.3s;
}

.gradient:hover {
    --gradient-stop: 75%;
}
Nach dem Login kopieren
Nach dem Login kopieren

Ich freue mich auf

Diese Funktionen stellen nur die Spitze des Eisbergs dar. Mit anderen leistungsstarken Ergänzungen wie Containerabfragen, Subgrid und dem :has-Selektor entwickelt sich CSS weiter zu einer leistungsfähigeren und entwicklerfreundlicheren Sprache. Die moderne CSS-Basislinie, die von allen gängigen Browsern unterstützt wird, beweist, dass CSS nicht nur überlebt – es gedeiht.

Vorbei sind die Zeiten, in denen CSS als notwendiges Übel in der Webentwicklung angesehen wurde. Diese neuen Funktionen zeigen das Engagement, reale Entwicklerherausforderungen zu lösen und gleichzeitig die Sprache intuitiver und leistungsfähiger zu machen. Im weiteren Verlauf wird klar, dass sich CSS nicht nur verändert, sondern auch unsere Herangehensweise an das Web-Styling revolutioniert.

Das obige ist der detaillierte Inhalt vonCSS hat sich für immer verändert: evolutionäre Funktionen, die Sie kennen müssen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage