Slaan oor na hoofinhoud Slaan oor na dokumentnavigasie
Check
in English

Verhoudings

Gebruik gegenereerde pseudo-elemente om 'n element die aspekverhouding van jou keuse te laat handhaaf. Ideaal vir die responsiewe hantering van video- of skyfievertoning-insluitsels gebaseer op die breedte van die ouer.

Op hierdie bladsy

Oor

Gebruik die verhoudinghulp om die aspekverhoudings van eksterne inhoud soos <iframe>s, <embed>s, <video>s en <object>s te bestuur. Hierdie helpers kan ook gebruik word op enige standaard HTML-kinderelement (bv. a <div>of <img>). Style word vanaf die ouerklas .ratiodirek op die kind toegepas.

Aspekverhoudings word in 'n Sass-kaart verklaar en by elke klas ingesluit via CSS-veranderlike, wat ook pasgemaakte aspekverhoudings toelaat .

Pro-wenk! Jy het nie frameborder="0"op jou <iframe>s nodig nie, want ons ignoreer dit vir jou in Reboot .

Voorbeeld

Wikkel enige inbed, soos 'n <iframe>, in 'n ouerelement met .ratio'n aspekverhoudingklas. Die onmiddellike kinderelement word outomaties gegrootte danksy ons universele kieser .ratio > *.

html
<div class="ratio ratio-16x9">
  <iframe src="https://www.youtube.com/embed/zpOULjyy-n8?rel=0" title="YouTube video" allowfullscreen></iframe>
</div>

Aspekverhoudings

Aspekverhoudings kan aangepas word met wysigerklasse. By verstek word die volgende verhoudingsklasse verskaf:

1x1
4x3
16x9
21x9
html
<div class="ratio ratio-1x1">
  <div>1x1</div>
</div>
<div class="ratio ratio-4x3">
  <div>4x3</div>
</div>
<div class="ratio ratio-16x9">
  <div>16x9</div>
</div>
<div class="ratio ratio-21x9">
  <div>21x9</div>
</div>

Pasgemaakte verhoudings

Elke .ratio-*klas bevat 'n CSS-pasgemaakte eiendom (of CSS-veranderlike) in die kieser. U kan hierdie CSS-veranderlike ignoreer om pasgemaakte aspekverhoudings te skep met vinnige wiskunde van u kant.

Byvoorbeeld, om 'n 2x1 aspekverhouding te skep, stel --bs-aspect-ratio: 50%op die .ratio.

2x1
html
<div class="ratio" style="--bs-aspect-ratio: 50%;">
  <div>2x1</div>
</div>

Hierdie CSS-veranderlike maak dit maklik om die aspekverhouding oor breekpunte te verander. Die volgende is 4x3 om te begin, maar verander na 'n pasgemaakte 2x1 by die medium breekpunt.

.ratio-4x3 {
  @include media-breakpoint-up(md) {
    --bs-aspect-ratio: 50%; // 2x1
  }
}
4x3, dan 2x1
html
<div class="ratio ratio-4x3">
  <div>4x3, then 2x1</div>
</div>

Sass kaart

Binne _variables.scsskan jy die aspekverhoudings wat jy wil gebruik, verander. Hier is ons verstekkaart $ratio-aspect-ratios. Verander die kaart soos jy wil en stel jou Sass saam om dit te gebruik.

$aspect-ratios: (
  "1x1": 100%,
  "4x3": calc(3 / 4 * 100%),
  "16x9": calc(9 / 16 * 100%),
  "21x9": calc(9 / 21 * 100%)
);