Skip to content

Commit

Permalink
Icon link: envariable + enhance the documentation (#38130)
Browse files Browse the repository at this point in the history
* Envariable the icon-link helper

* Proposal

* .
  • Loading branch information
louismaximepiton authored Mar 2, 2023
1 parent 912cfe5 commit 7832136
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 7 deletions.
9 changes: 9 additions & 0 deletions scss/_variables.scss
Original file line number Diff line number Diff line change
Expand Up @@ -459,6 +459,15 @@ $link-hover-decoration: null !default;
$stretched-link-pseudo-element: after !default;
$stretched-link-z-index: 1 !default;

// Icon links
// scss-docs-start icon-link-variables
$icon-link-gap: .375rem !default;
$icon-link-underline-offset: .25em !default;
$icon-link-icon-size: 1em !default;
$icon-link-icon-transition: .2s ease-in-out transform !default;
$icon-link-icon-transform: translate3d(.25em, 0, 0) !default;
// scss-docs-end icon-link-variables

// Paragraphs
//
// Style p element.
Expand Down
13 changes: 7 additions & 6 deletions scss/helpers/_icon-link.scss
Original file line number Diff line number Diff line change
@@ -1,24 +1,25 @@
.icon-link {
display: inline-flex;
gap: .375rem;
gap: $icon-link-gap;
align-items: center;
text-decoration-color: rgba(var(--#{$prefix}link-color-rgb), var(--#{$prefix}link-opacity, .5));
text-underline-offset: .25em;
text-underline-offset: $icon-link-underline-offset;
backface-visibility: hidden;

> .bi {
flex-shrink: 0;
width: 1em;
height: 1em;
@include transition(.2s ease-in-out transform);
width: $icon-link-icon-size;
height: $icon-link-icon-size;
fill: currentcolor;
@include transition($icon-link-icon-transition);
}
}

.icon-link-hover {
&:hover,
&:focus-visible {
> .bi {
transform: var(--#{$prefix}icon-link-transform, translate3d(.25em, 0, 0));
transform: var(--#{$prefix}icon-link-transform, $icon-link-icon-transform);
}
}
}
25 changes: 24 additions & 1 deletion site/content/docs/5.3/helpers/icon-link.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,14 @@ Add `.icon-link-hover` to move the icon to the right on hover.
</a>
{{< /example >}}

## Customize

Modify the styling of an icon link with our link CSS variables, Sass variables, utilities, or custom styles.

### CSS variables

Modify the `--bs-link-*` and `--bs-icon-link-*` CSS variables as needed to change the default appearance.

Customize the hover `transform` by overriding the `--bs-icon-link-transform` CSS variable:

{{< example >}}
Expand All @@ -54,7 +62,22 @@ Customize the hover `transform` by overriding the `--bs-icon-link-transform` CSS
</a>
{{< /example >}}

## Pairs with link utilities
Customize the color by overriding the `--bs-link-*` CSS variable:

{{< example >}}
<a class="icon-link icon-link-hover" style="--bs-link-hover-color-rgb: 25, 135, 84;" href="#">
Icon link
<svg class="bi" aria-hidden="true"><use xlink:href="#arrow-right"></use></svg>
</a>
{{< /example >}}

### Sass

Customize the icon link Sass variables to modify all icon link styles across your Bootstrap-powered project.

{{< scss-docs name="icon-link-variables" file="scss/_variables.scss" >}}

### Utilities

Modify icon links with any of [our link utilities]({{< docsref "/utilities/link/" >}}) for modifying underline color and offset.

Expand Down

0 comments on commit 7832136

Please sign in to comment.