Pomery
Použite vygenerované pseudo prvky, aby si prvok zachoval pomer strán podľa vášho výberu. Ideálne na citlivé spracovanie vložených videí alebo prezentácií na základe šírky rodiča.
O
Pomocou pomocníka pomeru môžete spravovať pomery strán externého obsahu, ako sú <iframe>
s, <embed>
s, <video>
s a <object>
s. Týchto pomocníkov možno použiť aj na ľubovoľný štandardný podradený prvok HTML (napr. a <div>
alebo <img>
). Štýly sa aplikujú z rodičovskej .ratio
triedy priamo na dieťa.
Pomery strán sú deklarované v mape Sass a zahrnuté v každej triede prostredníctvom premennej CSS, ktorá tiež umožňuje vlastné pomery strán .
Príklad
Zabaľte akékoľvek vloženie, napríklad <iframe>
, do nadradeného prvku s .ratio
triedou pomeru strán a . Okamžitý detský prvok je automaticky dimenzovaný vďaka nášmu univerzálnemu voliču .ratio > *
.
<div class="ratio ratio-16x9">
<iframe src="https://www.youtube.com/embed/zpOULjyy-n8?rel=0" title="YouTube video" allowfullscreen></iframe>
</div>
Pomery strán
Pomery strán je možné prispôsobiť triedami modifikátorov. Štandardne sú k dispozícii nasledujúce triedy pomerov:
<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>
Vlastné pomery
Každá .ratio-*
trieda obsahuje vlastnú vlastnosť CSS (alebo premennú CSS) v selektore. Túto premennú CSS môžete prepísať, aby ste mohli za chodu vytvárať vlastné pomery strán pomocou rýchlej matematiky z vašej strany.
Ak chcete napríklad vytvoriť pomer strán 2x1, nastavte --bs-aspect-ratio: 50%
na .ratio
.
<div class="ratio" style="--bs-aspect-ratio: 50%;">
<div>2x1</div>
</div>
Táto premenná CSS uľahčuje úpravu pomeru strán medzi bodmi prerušenia. Nasleduje začiatok 4x3, ale pri strednom bode zlomu sa zmení na vlastný 2x1.
.ratio-4x3 {
@include media-breakpoint-up(md) {
--bs-aspect-ratio: 50%; // 2x1
}
}
<div class="ratio ratio-4x3">
<div>4x3, then 2x1</div>
</div>
Sass mapa
V rámci _variables.scss
môžete zmeniť pomery strán, ktoré chcete použiť. Tu je naša predvolená $ratio-aspect-ratios
mapa. Upravte mapu, ako sa vám páči, a prekompilujte svoje Sass, aby ste ich mohli používať.
$aspect-ratios: (
"1x1": 100%,
"4x3": calc(3 / 4 * 100%),
"16x9": calc(9 / 16 * 100%),
"21x9": calc(9 / 21 * 100%)
);