Icon link
Quickly create stylized hyperlinks with Bootstrap Icons or other icons.
The icon link helper component modifies our default link styles to enhance their appearance and quickly align any pairing of icon and text. Alignment is set via inline flexbox styling and a default gap
value. We stylize the underline with a custom offset and color. Icons are automatically sized to 1em
to best match their associated text’s font-size
.
Icon links assume Bootstrap Icons are being used, but you can use any icon or image you like.
aria-hidden="true"
, as we’ve done in our examples. For icons that are more than decorative, provide an appropriate text alternative via alt
for <img>
elements role="img"
and aria-label
for SVGs.
Example
Take a regular <a>
element, add .icon-link
, and insert an icon on either the left or right of your link text. The icon is automatically sized, placed, and colored.
<a class="icon-link" href="#">
<svg class="bi" aria-hidden="true"><use xlink:href="#box-seam"></use></svg>
Icon link
</a>
<a class="icon-link" href="#">
Icon link
<svg class="bi" aria-hidden="true"><use xlink:href="#arrow-right"></use></svg>
</a>
Style on hover
Add .icon-link-hover
to move the icon to the right on hover.
<a class="icon-link icon-link-hover" href="#">
Icon link
<svg class="bi" aria-hidden="true"><use xlink:href="#arrow-right"></use></svg>
</a>
Customize the hover transform
by overriding the --bs-icon-link-transform
CSS variable:
<a class="icon-link icon-link-hover" style="--bs-icon-link-transform: translate3d(0, -.125rem, 0);" href="#">
<svg class="bi" aria-hidden="true"><use xlink:href="#clipboard"></use></svg>
Icon link
</a>
Pairs with link utilities
Modify icon links with any of our link utilities for modifying underline color and offset.
<a class="icon-link icon-link-hover link-success link-underline-success link-underline-opacity-25" href="#">
Icon link
<svg class="bi" aria-hidden="true"><use xlink:href="#arrow-right"></use></svg>
</a>