Eine Utility-Klasse zum Abdecken von Elementen

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Ein großes *Gleiches* an Michelle Barker hier

Hier ist etwas, das ich in CSS immer wieder brauche: das vollständige Abdecken eines Elements mit einem anderen. Es ist jedes Mal dieselbe CSS: Dem ersten Element (dem, das abgedeckt werden muss) wird position: relative zugewiesen. Das zweite hat position: absolute und ist so positioniert, dass alle vier Seiten an den Kanten des ersten Elements ausgerichtet sind.

.original-element {
  position: relative;
}

.covering-element {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

Ich habe irgendwie im Kopf, dass es „nicht so zuverlässig“ ist, bottom und right zu verwenden, und dass es sicherer ist, top und left zu setzen und dann width: 100% und height: 100% anzuwenden. Aber ich erinnere mich nicht mehr, warum – vielleicht war es etwas mit älteren Browsern?

Aber wenn wir schon von Modernisierung sprechen, ist mein Lieblingsteil aus Michelles Artikel dieser

.overlay {
  position: absolute;
  inset: 0;
}

Die inset-Eigenschaft ist eine logische Eigenschaft und hier offensichtlich sehr praktisch! Lesen Sie den Artikel für einen weiteren Trick mit CSS Grid.

Direkter Link →