Razvučena veza
Učinite bilo koji HTML element ili komponentu Bootstrap moguće kliknutim tako što ćete "razvući" ugniježđenu vezu putem CSS-a.
Dodajte .stretched-link
linku kako biste omogućili klikanje na blok koji sadrži::after
pseudo element. U većini slučajeva, to znači da se na element position: relative;
koji sadrži vezu s .stretched-link
klasom može kliknuti. Imajte na umu kako CSS position
radi , .stretched-link
ne može se miješati s većinom elemenata tablice.
Kartice se position: relative
podrazumevano nalaze u Bootstrapu, tako da u ovom slučaju možete bezbedno dodati .stretched-link
klasu na vezu na kartici bez ikakvih drugih HTML promena.
Višestruke veze i mete dodirivanja se ne preporučuju s rastegnutim vezama. Međutim, neki position
i z-index
stilovi mogu pomoći ako je to potrebno.
Kartica sa rastegnutom vezom
Neki brzi primjer teksta koji treba nadograditi na naslov kartice i činiti većinu sadržaja kartice.
Idi negde<div class="card" style="width: 18rem;">
<img src="..." class="card-img-top" alt="...">
<div class="card-body">
<h5 class="card-title">Card with stretched link</h5>
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
<a href="#" class="btn btn-primary stretched-link">Go somewhere</a>
</div>
</div>
Većina prilagođenih komponenti nema position: relative
podrazumevano, tako da moramo da dodamo .position-relative
ovde da bismo sprečili da se veza rasteže izvan nadređenog elementa.
Prilagođena komponenta sa rastegnutom vezom
Ovo je neki sadržaj čuvara mjesta za prilagođenu komponentu. Namijenjen je da oponaša kako bi izgledao neki sadržaj iz stvarnog svijeta, a mi ga ovdje koristimo da komponenti damo malo tijela i veličine.
Idi negde<div class="d-flex position-relative">
<img src="..." class="flex-shrink-0 me-3" alt="...">
<div>
<h5 class="mt-0">Custom component with stretched link</h5>
<p>This is some placeholder content for the custom component. It is intended to mimic what some real-world content would look like, and we're using it here to give the component a bit of body and size.</p>
<a href="#" class="stretched-link">Go somewhere</a>
</div>
</div>
Kolone sa rastegnutom vezom
Još jedna instanca sadržaja čuvara mjesta za ovu drugu prilagođenu komponentu. Namijenjen je da oponaša kako bi izgledao neki sadržaj iz stvarnog svijeta, a mi ga ovdje koristimo da komponenti damo malo tijela i veličine.
Idi negde<div class="row g-0 bg-light position-relative">
<div class="col-md-6 mb-md-0 p-md-4">
<img src="..." class="w-100" alt="...">
</div>
<div class="col-md-6 p-4 ps-md-0">
<h5 class="mt-0">Columns with stretched link</h5>
<p>Another instance of placeholder content for this other custom component. It is intended to mimic what some real-world content would look like, and we're using it here to give the component a bit of body and size.</p>
<a href="#" class="stretched-link">Go somewhere</a>
</div>
</div>
Identifikacija bloka koji sadrži
Ako se čini da rastegnuta veza ne radi, uzrok će vjerovatno biti blok koji ga sadrži . Sljedeća CSS svojstva će element učiniti blokom koji sadrži:
- Vrijednost
position
koja nijestatic
- A
transform
iliperspective
vrijednost koja nijenone
will-change
Vrijednosttransform
ili _perspective
filter
Vrijednost koja nije ilinone
vrijednostwill-change
(filter
radi samo na Firefoxu)
Kartica sa rastegnutim vezama
Neki brzi primjer teksta koji treba nadograditi na naslov kartice i činiti većinu sadržaja kartice.
Razvučeni link ovdje neće raditi, jer position: relative
je dodat linku
Ova rastegnuta veza će se širiti samo preko p
oznake -oznake, jer se na nju primjenjuje transformacija.
<div class="card" style="width: 18rem;">
<img src="..." class="card-img-top" alt="...">
<div class="card-body">
<h5 class="card-title">Card with stretched links</h5>
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
<p class="card-text">
<a href="#" class="stretched-link text-danger" style="position: relative;">Stretched link will not work here, because <code>position: relative</code> is added to the link</a>
</p>
<p class="card-text bg-light" style="transform: rotate(0);">
This <a href="#" class="text-warning stretched-link">stretched link</a> will only be spread over the <code>p</code>-tag, because a transform is applied to it.
</p>
</div>
</div>