background-size Syntax
Hintergrundbilder lassen sich mit vier Schreibweisen einsetzen: mit Schlüsselwörtern, mit einem Wert, mit zwei Werten und mit der Syntax für mehrere Hintergrundbilder.
.slider { background-image: url(overview.jpg); background-size: cover; }
Bei mehr als einem Hintergrundbild sitzen die Größenangaben in einer kommagetrennten Liste.
background-size: 200px;
background-size: 200px 100px;
background-size: 200px 100px, 400px 200px; // zwei Hintergrundbilder
background-size: auto 200px;
background-size: 50% 25%;
background-size: contain;
background-size: cover;
Browser-Support: Alle modernen Browser (IE ab Version 10).
SVG-Grafik ist besonders gut geeignet als Hintergrundbild, da sich SVG so schön an die Größe des Viewports anpassen lässt. SVG skaliert beliebig ohne Stufen.
Beispiele: background-size – Länge, %, contain, cover
- background-size: 50px 40px skaliert das Hintergrundbild auf die angegebenen Maße.
- background-size: 100% 50% skaliert das Hintergrundbild im Verhältnis zur Größe der Box.
- background-size: contain passt die längere Seite des Hintergrundbilds in die Box ein.
- background-size: cover passt die kleinere Seite des Hintergrundbilds in die Box ein.
- background-size: auto reale Größe des Hintergrundbilds.
Wenn das Bild nicht als Hintergrundbild, sondern mit HTML img eingesetzt wird, bewirkt object-fit mit den Werten cover bzw. fit die gleiche Wirkung: Das Bild wird responsiv angepasst und kann den umfassenden Container mit cover vollständig ausfüllen.
background-size: cover / contain
cover und contain vergrößern oder verkleinern Hintergrundbilder, bis sie das umfassende Element vollständig abdecken. Hat das Hintergrundbild ein anderes Seitenverhältnis als das umfassende Element, liegen bei cover Teile des Bildes außerhalb des sichtbaren Bereichs. contain zeigt das Hintergrundbild vollständig an, aber Teile des umfassenden Elements bleiben leer (background-repeat: no-repeat).
cover ist zusammen mit background-position die Technik für Hintergrundbilder, die auf kleinen Monitoren nicht automatisch herunter skaliert werden, sondern weiterhin den wichtigsten Bildausschnitt detailliert zeigen.
background size Fullscreen
Damit haben wir also das Rüstzeug für ein Fullscreen-Hintergrundbild beisammen. Das Hintergrundbild sollte möglichst quadratisch vorliegen.
<style> .fullscreen { background-repeat: no-repeat; background-position: center; background-size: cover; width: 100vw; height: 100vh; display: flex; justify-content: center; align-items: center; } @media (max-width: 1259px) { .fullscreen { background-image: url("image-980.jpg"); } } @media (min-width:1260px) { .fullscreen { background-image: url("image-1960.jpg"); } } </style>
Das umfassende DIV-Element mit ist width: 100vw und height: 100vh an die Größe des Monitors angepasst. background-size: cover passt das Hintergrundbild an die breitere Seite des Monitors (eigentlich: des umfassenden Elements) an.
display: flex; justify-content: center; align-items: center; bringen das Label in die vertikale und horizontale Mitte des Screens.
<div class="fullscreen"> <div class="label"> Fullscreen </div> </div>
Quelle: Pen von cartuhok