aspect-ratio
        
        
          
                Baseline
                
                  Widely available
                
                
              
        
        
        
          
                
              
                
              
                
              
        
        
      
      This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
Die aspect-ratio-Eigenschaft CSS ermöglicht es Ihnen, das gewünschte Breiten-Höhen-Verhältnis eines Element-Box zu definieren. Dies bedeutet, dass der Browser die Dimensionen des Elements anpasst, um das angegebene Breiten-Höhen-Verhältnis beizubehalten, selbst wenn sich die Größe des übergeordneten Containers oder des Ansichtsfensters ändert. Das angegebene aspect ratio wird bei der Berechnung von automatischen Größen und einigen anderen Layoutfunktionen verwendet.
Mindestens eine der Größen der Box muss automatisch sein, damit aspect-ratio eine Wirkung hat. Wenn weder die Breite noch die Höhe eine automatische Größe ist, hat das angegebene Seitenverhältnis keine Auswirkung auf die bevorzugten Größen der Box.
Probieren Sie es aus
aspect-ratio: auto;
aspect-ratio: 1 / 1;
aspect-ratio: 16 / 9;
aspect-ratio: 0.5;
<section id="default-example">
  <img
    class="transition-all"
    height="640"
    id="example-element"
    src="/shared-assets/images/examples/plumeria.jpg"
    width="466" />
</section>
#example-element {
  height: 100%;
  width: auto;
}
Syntax
aspect-ratio: 1 / 1;
aspect-ratio: 1;
/* fallback to 'auto' for replaced elements */
aspect-ratio: auto 3/4;
aspect-ratio: 9/6 auto;
/* Global values */
aspect-ratio: inherit;
aspect-ratio: initial;
aspect-ratio: revert;
aspect-ratio: revert-layer;
aspect-ratio: unset;
Diese Eigenschaft wird als eines oder beide der Schlüsselwörter auto oder ein <ratio> angegeben. Wenn beide angegeben sind und das Element ein replaced element ist, wie z. B. ein <img>, wird das angegebene Verhältnis verwendet, bis der Inhalt geladen ist. Nach dem Laden des Inhalts wird der Wert auto angewandt, sodass das intrinsische Seitenverhältnis des geladenen Inhalts verwendet wird.
Wenn das Element kein ersetzt Element ist, wird das angegebene ratio verwendet.
Werte
- auto
- 
Ersetzte Elemente mit einem intrinsischen Seitenverhältnis verwenden dieses Seitenverhältnis, ansonsten hat die Box kein bevorzugtes Seitenverhältnis. Größenberechnungen, die das intrinsische Seitenverhältnis betreffen, arbeiten immer mit den Abmessungen des Inhaltsfelds. 
- <ratio>
- 
Das bevorzugte Seitenverhältnis der Box ist das angegebene Verhältnis von width/height. Wennheightund das vorangehende Schrägstrichzeichen weggelassen werden, nimmtheightden Standardwert1an. Größenberechnungen, die das bevorzugte Seitenverhältnis betreffen, arbeiten mit den durchbox-sizingangegebenen Abmessungen der Box.
- auto && <ratio>
- 
Wenn autound ein<ratio>zusammen angegeben werden, wirdautoverwendet, wenn das Element ein ersetzt Element mit einem natürlichen Seitenverhältnis ist, wie ein<img>-Element. Andernfalls wird das angegebene Verhältnis vonwidth/heightals bevorzugtes Seitenverhältnis verwendet.
Formale Definition
| Anfangswert | auto | 
|---|---|
| Anwendbar auf | all elements except inline boxes and internal ruby or table boxes | 
| Vererbt | Nein | 
| Berechneter Wert | wie angegeben | 
| Animationstyp | by computed value type | 
Formale Syntax
aspect-ratio =
auto ||
<ratio>
<ratio> =
<number [0,∞]> [ / <number [0,∞]> ]?
Beispiele
>Erkundung der Effekte von aspect-ratio bei fester Breite
In diesem Beispiel wurde die Breite der <div>-Elemente auf 100px und die Höhe auf auto gesetzt. Da der Wert für die Breite hier fest ist, beeinflusst die Eigenschaft aspect-ratio nur die Höhe der <div>-Elemente, um das angegebene Breiten-Höhen-Verhältnis beizubehalten.
div {
  width: 100px;
  height: auto;
}
div:nth-child(1) {
  aspect-ratio: 1/1;
}
div:nth-child(2) {
  aspect-ratio: 0.5;
}
div:nth-child(3) {
  aspect-ratio: 1;
}
div:nth-child(4) {
  aspect-ratio: 1/0.5;
}
div:nth-child(5) {
  aspect-ratio: 16/9;
}
Rückfall auf natürliches Seitenverhältnis
In diesem Beispiel verwenden wir zwei <img>-Elemente. Das erste Element hat sein src-Attribut nicht auf eine Bilddatei gesetzt.
<img src="" /> <img src="plumeria.jpg" />
Der folgende Code legt 3/2 als bevorzugtes Seitenverhältnis und auto als Rückfall fest.
img {
  display: inline;
  width: 200px;
  border: 2px dashed red;
  background-color: lime;
  vertical-align: top;
  aspect-ratio: 3/2 auto;
}
Beachten Sie, wie das erste Bild ohne ersetzten Inhalt das 3/2-Seitenverhältnis beibehält, während das zweite Bild nach dem Laden des Inhalts das natürliche Seitenverhältnis des Bildes verwendet.
Spezifikationen
| Specification | 
|---|
| CSS Box Sizing Module Level 4> # aspect-ratio> | 
Browser-Kompatibilität
Loading…