Bootstrap ist ein CSS-Framework mit vorgefertigten Komponenten wie Cards, Navbars und einem integrierten Gridsystem, über das Entwickler schnell und einfach responsive Websites erstellen können.
Mit kommenden Major Release habe das Augenmerk darauf gelegen, die Migration von V4 zu V5 so smooth wie möglich zu gestalten, so der offizielle Blogpost zum Alpha-Release. Trotzdem sei das Team nicht davor zurückgeschreckt, sich von Features zu trennen, die man als nicht mehr zeitgemäß erachte. So basiert Bootstraps 5. Version nicht länger auf jQuery und auch Microsofts Internet Explorer wird von dem Framework nicht mehr unterstützt.
Abschied von jQuery
jQuery war jahrelang State of the Art in der Webentwickler-Community. Mittlerweile wurde das Framework aber von anderen Frameworks und Frontend-Tools abgelöst. Dem trägt Bootstraps 5. Version Rechnung: jQuery ist nicht länger eine Dependency des CSS-Frameworks. Bemerkbar machen soll sich die Änderung in einer signifikant reduzierten Dateigröße und schnelleren Ladezeiten. Weitere Änderungen am JavaScript der CSS-Bibliothek manifestieren sich vor allem in einer Rückkehr zu HTML- und CSS-basierten Lösungen für Features, bei denen das möglich ist, wie etwa dem Toggle-Button, der künftig aus Checkboxen und Radio-Buttons bestehen soll. Nachverfolgen könnt ihr diese und alle weiteren Änderungen an Bootstraps JavaScript im zugehörigen Repo auf GitHub.
CSS Custom Properties
Bootstrap 5 macht sich die Möglichkeiten von Sass und CSS Custom Properties zunutze, um euch künftig ein sehr viel flexibleres Design-System zu bieten. In Version 4 gab es bereits eine Reihe von Root-Variablen für Farben und Fonts, in der neuen Version soll es zudem Möglichkeiten zum Customizen verschiedener Komponenten und Layout-Optionen geben. So bietet die Alpha von V5 etwa die lokalen Variablen .striped, .hover und .active zum einfacheren Stylen von Tabellen; welche für Komponenten – zum Beispiel Buttons – sollen folgen.
.table {
--bs-table-bg: #{$table-bg};
--bs-table-accent-bg: transparent;
--bs-table-striped-color: #{$table-striped-color};
--bs-table-striped-bg: #{$table-striped-bg};
--bs-table-active-color: #{$table-active-color};
--bs-table-active-bg: #{$table-active-bg};
--bs-table-hover-color: #{$table-hover-color};
--bs-table-hover-bg: #{$table-hover-bg};
// styles here...
}
Aktualisierte Docs
Mit dem Release von Version 4.5 wurde bereits die Docs-Homepage überarbeitet, V5 bringt nun einen neuen Look für die komplette Doku. Der Fokus liegt dabei auf Navigation und Lesbarkeit. Neu in die Doku aufgenommen wurde eine Section namens Customize Docs. Die beinhaltet Code-Snippets, die ihr nutzen könnt, um auf Bootstraps Source-Sass-Dateien aufzubauen. Um euch den Start zu vereinfachen, gibt es dafür sogar ein bootstrap-npm-starter
-Projekt und ein Template-Repo auf GitHub, das ihr forken könnt.
Neuer Static Site Generator
Hatte das Team bislang auf Static Site Generator Jekyll gesetzt, werden die Docs unter Bootstrap 5 jetzt mit einer Go-basierten Alternative namens Hugo generiert, was wohl vor allem Performanzvorteile bringt.
Neue Forms-Section und erweiterte Farbpalette
Die Formular-Styles findet ihr in ab V5 in einer neu geschaffenen Forms-Section in der Doku.
Checkboxen, Radio-Buttons, und Labels wie select
, file
, range
und weitere wurden überarbeitet und sind in der neuen Version komplett auf semantischen, standardisierten Formularsteuerelementen basiert.
Bootstrap 5: Neue Farbpalette
Außerdem wurde die Farbpalette erweitert: V5 verfügt über ein vielfältiges Farbsystem, über das ihr zukünftig deutlich mehr Farben direkt in Bootstrap verwenden könnt, ohne die Codebase zu verlassen. Zudem wurden die Farbkontraste überarbeitet und zugehörige Metriken in die Farbdocs aufgenommen. Die Autoren des Blogpost zum Alpha-Release drücken die Hoffnung aus, dass dies zur Barrierefreiheit von mit Bootstrap gebauten Websites beiträgt.
Utilities
Angelehnt an aktuelle Entwicklungen anderer CSS-Frameworks und Libraries, kommt Bootstrap 5 mit einer neuen Utility-API.
Die API ermöglicht es euch zukünftig, über eine Sass-basierte neue Syntax eure eigenen Utilities in Bootstrap zu erstellen und zu nutzen. Von Bootstrap bereitgestellte Utilities sollen dann auch beliebig zu entfernen sein. Für alle, die Bootstrap über OS-Dateien nutzen, bedeutet das einen echten Paradigmenwechsel.
$utilities: () !default;
$utilities: map-merge(
(
// ...
"width": (
property: width,
class: w,
values: (
25: 25%,
50: 50%,
75: 75%,
100: 100%,
auto: auto
)
),
// ...
"margin": (
responsive: true,
property: margin,
class: m,
values: map-merge($spacers, (auto: auto))
),
// ...
), $utilities);
Damit die Doku übersichtlich bleibt, wurden einige der Utilities aus Bootstrap 4 in eine neu dafür geschaffene Helpers-Section verschoben, betroffen sind längere Code-Snippets, die die Länge der üblichen property-value-Paare der Bootstrap-Utilities überschreiten.
Bootstrap 5: Erweitertes Grid-System
Das Gridsystem in Bootstrap 5 setzt auf jenem in Bootstrap 4 auf, kommt allerdings mit einigen Verbesserungen: Mit xxl
gibt es eine weitere Größe und Bootstrap 4s .gutter
-Klassen wurden durch .g*
-Utilities ersetzt.
<div class="row g-5">
<div class="col">...</div>
<div class="col">...</div>
<div class="col">...</div>
</div>
Das neue Grid-System ersetzt zukünftig auch die Form-Layout-Möglichkeiten des Frameworks. Bootstrap 5s Gridsystem kommt außerdem mit neuen Klassen für vertikales Spacing und position: relative
ist nicht länger der Default für Columns.
Für kommende Releases will das Team um das Framework CSS’ Grid-Layout weiter im Auge behalten, so der Blogpost.
Für kommende Releases sind außerdem weitere Neuerungen wie RTL und die Implementation eines offcanvas-Menüs geplant; bis es soweit ist, lohnt es sich, das Bootstrap-Blog im Auge zu behalten. Wer V5 jetzt schon ausprobieren will, kann sich über npm i bootstrap@next
die jeweils neueste Version installieren – behaltet jedoch im Hinterkopf, dass es sich hierbei um ein Alpha-Release handelt, auf dem Laufenden bleibt ihr über https://v5.getbootstrap.com.
Schöne Zusammenfassung… danke :-)
keine problem