Pereiti prie pagrindinio turinio Pereiti prie dokumentų naršymo
Check
in English

Padėtis

Naudokite šias trumpąsias priemones, kad greitai sukonfigūruotumėte elemento padėtį.

Pozicijos reikšmės

Galimos greitos padėties nustatymo klasės, tačiau jos nereaguoja.

<div class="position-static">...</div>
<div class="position-relative">...</div>
<div class="position-absolute">...</div>
<div class="position-fixed">...</div>
<div class="position-sticky">...</div>

Išdėstykite elementus

Lengvai išdėstykite elementus naudodami krašto padėties nustatymo priemones. Formatas yra {property}-{position}.

Kai nuosavybė yra viena iš:

  • top- vertikaliai toppadėčiai
  • start- horizontaliai left(LTR)
  • bottom- vertikaliai bottompadėčiai
  • end- horizontaliai right(LTR)

Kai pozicija yra viena iš:

  • 0- 0krašto padėčiai
  • 50- 50%krašto padėčiai
  • 100- 100%krašto padėčiai

(Galite pridėti daugiau padėties reikšmių, įtraukdami įrašus į $position-valuesSass žemėlapio kintamąjį.)

html
<div class="position-relative">
  <div class="position-absolute top-0 start-0"></div>
  <div class="position-absolute top-0 end-0"></div>
  <div class="position-absolute top-50 start-50"></div>
  <div class="position-absolute bottom-50 end-50"></div>
  <div class="position-absolute bottom-0 start-0"></div>
  <div class="position-absolute bottom-0 end-0"></div>
</div>

Centriniai elementai

Be to, elementus taip pat galite centruoti naudodami transformavimo naudingumo klasę .translate-middle.

Ši klasė taiko transformacijas translateX(-50%)ir translateY(-50%)elementui, kuris kartu su krašto padėties nustatymo priemonėmis leidžia absoliučiai sucentruoti elementą.

html
<div class="position-relative">
  <div class="position-absolute top-0 start-0 translate-middle"></div>
  <div class="position-absolute top-0 start-50 translate-middle"></div>
  <div class="position-absolute top-0 start-100 translate-middle"></div>
  <div class="position-absolute top-50 start-0 translate-middle"></div>
  <div class="position-absolute top-50 start-50 translate-middle"></div>
  <div class="position-absolute top-50 start-100 translate-middle"></div>
  <div class="position-absolute top-100 start-0 translate-middle"></div>
  <div class="position-absolute top-100 start-50 translate-middle"></div>
  <div class="position-absolute top-100 start-100 translate-middle"></div>
</div>

Pridedant .translate-middle-xar .translate-middle-yklases, elementai gali būti išdėstyti tik horizontalia arba vertikalia kryptimi.

html
<div class="position-relative">
  <div class="position-absolute top-0 start-0"></div>
  <div class="position-absolute top-0 start-50 translate-middle-x"></div>
  <div class="position-absolute top-0 end-0"></div>
  <div class="position-absolute top-50 start-0 translate-middle-y"></div>
  <div class="position-absolute top-50 start-50 translate-middle"></div>
  <div class="position-absolute top-50 end-0 translate-middle-y"></div>
  <div class="position-absolute bottom-0 start-0"></div>
  <div class="position-absolute bottom-0 start-50 translate-middle-x"></div>
  <div class="position-absolute bottom-0 end-0"></div>
</div>

Pavyzdžiai

Štai keletas realių šių klasių pavyzdžių:

html
<button type="button" class="btn btn-primary position-relative">
  Mails <span class="position-absolute top-0 start-100 translate-middle badge rounded-pill bg-secondary">+99 <span class="visually-hidden">unread messages</span></span>
</button>

<button type="button" class="btn btn-dark position-relative">
  Marker <svg width="1em" height="1em" viewBox="0 0 16 16" class="position-absolute top-100 start-50 translate-middle mt-1" fill="#212529" xmlns="http://www.w3.org/2000/svg"><path d="M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z"/></svg>
</button>

<button type="button" class="btn btn-primary position-relative">
  Alerts <span class="position-absolute top-0 start-100 translate-middle badge border border-light rounded-circle bg-danger p-2"><span class="visually-hidden">unread messages</span></span>
</button>

Galite naudoti šias klases su esamais komponentais, kad sukurtumėte naujus. Atminkite, kad galite išplėsti jo funkcionalumą įtraukdami į $position-valueskintamąjį įrašus.

html
<div class="position-relative m-4">
  <div class="progress" style="height: 1px;">
    <div class="progress-bar" role="progressbar" aria-label="Progress" style="width: 50%;" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100"></div>
  </div>
  <button type="button" class="position-absolute top-0 start-0 translate-middle btn btn-sm btn-primary rounded-pill" style="width: 2rem; height:2rem;">1</button>
  <button type="button" class="position-absolute top-0 start-50 translate-middle btn btn-sm btn-primary rounded-pill" style="width: 2rem; height:2rem;">2</button>
  <button type="button" class="position-absolute top-0 start-100 translate-middle btn btn-sm btn-secondary rounded-pill" style="width: 2rem; height:2rem;">3</button>
</div>

Sass

Žemėlapiai

Numatytosios padėties naudingumo vertės deklaruojamos Sass žemėlapyje, tada naudojamos komunalinėms paslaugoms generuoti.

$position-values: (
  0: 0,
  50: 50%,
  100: 100%
);

Utilities API

Padėties komunalinės paslaugos nurodytos mūsų paslaugų API scss/_utilities.scss. Sužinokite, kaip naudoti paslaugų API.

    "position": (
      property: position,
      values: static relative absolute fixed sticky
    ),
    "top": (
      property: top,
      values: $position-values
    ),
    "bottom": (
      property: bottom,
      values: $position-values
    ),
    "start": (
      property: left,
      class: start,
      values: $position-values
    ),
    "end": (
      property: right,
      class: end,
      values: $position-values
    ),
    "translate-middle": (
      property: transform,
      class: translate-middle,
      values: (
        null: translate(-50%, -50%),
        x: translateX(-50%),
        y: translateY(-50%),
      )
    ),