sp-link

Overview API Changelog

Description

Section titled Description

An <sp-link> allow users to navigate to a different location. They can be presented in-line inside a paragraph or as a standalone text.

Usage

Section titled Usage

See it on NPM! How big is this package in your project? Try it on webcomponents.dev

yarn add @spectrum-web-components/link

Import the side effectful registration of <sp-link> via:

import '@spectrum-web-components/link/sp-link.js';

When looking to leverage the Link base class as a type and/or for extension purposes, do so via:

import { Link } from '@spectrum-web-components/link';

Example

Section titled Example
This is an <sp-link href="#">example link</sp-link>.

Variants

Section titled Variants
Section titled Standard links

Standard links are blue and should be used to call attention to the link or for when the blue color won’t feel too overwhelming in the experience.

This is a <sp-link href="#">standard link</sp-link>.
Section titled Disabled links

Disabled links are blue and should not propagate any events and they are not focussable.

This is a <sp-link disabled href="#">disabled link</sp-link>.
Section titled Secondary links

The secondary variant is the same color as the paragraph text inline of which it appears. Its subdued appearance is optimal for when the primary variant is too overwhelming, such as in blocks of text with several references linked throughout.

This is a <sp-link href="#" variant="secondary">secondary link</sp-link>.
Section titled Static colored links

When a link needs to be placed on top of a colored background or a visual it may be appropriate to ship it with a static color, regardless of the theme settings with which it is delivered. Leverage the static-color attribute with its white or black values to ensure the delivery is the same in all contexts.

White
<div
    style="background-color: #0f797d; padding: 15px 20px; display: inline-block;"
>
    <p style="color: rgb(240, 240, 240);">
        This
        <sp-link static-color="white" href="#">link</sp-link>
        is over a background.
    </p>
</div>
Black
<div
    style="background-color: rgb(181, 209, 211); padding: 15px 20px; display: inline-block;"
>
    <p style="color: rgb(15, 15, 15);">
        This
        <sp-link static-color="black" href="#">link</sp-link>
        is over a background.
    </p>
</div>
Section titled Quiet links

All links can have a quiet style, which means they don’t have an underline. This style should only be used when the placement and context of the link is explicit enough that a visible underline isn’t necessary. Quiet links are less accessible, so they should not be used for links that are essential to the experience. These are commonly used in website footers, where there are several lists of links that are shortcuts to other pages.

<p>This is a <sp-link quiet href="#">quiet standard link</sp-link>.</p>
<p>This is a <sp-link quiet variant="secondary" href="#">quiet secondary link</sp-link>.</p>
<div
    style="background-color: #0f797d; padding: 15px 20px; display: inline-block;"
>
    <p style="color: rgb(240, 240, 240);">
        This is a
        <sp-link static-color="white" quiet href="#">quiet link</sp-link>
        over a background.
    </p>
</div>

Download attribute

Section titled Download attribute

The download attribute on an <a> tag prompts a user to download a link as opposed to navigating to it. This attribute has been carried forward to <sp-link> to function the same.

While it functions this way without assigning a value, actually assigning the value allows custom naming of the download link in accordance with standard <a> rules defined by the browser.

This is a <sp-link download="myfile.txt" href="#">download link</sp-link>.

API

Attributes and Properties

Section titled Attributes and Properties
Property Attribute Type Default Description disabled disabled boolean false Disable this control. It will not receive focus or events download download string | undefined Causes the browser to treat the linked URL as a download. href href string | undefined The URL that the hyperlink points to. label label string | undefined An accessible label that describes the component. It will be applied to aria-label, but not visually rendered. quiet quiet boolean false Uses quiet styles or not referrerpolicy referrerpolicy | 'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url' | undefined How much of the referrer to send when following the link. rel rel string | undefined The relationship of the linked URL as space-separated link types. staticColor static-color 'black' | 'white' | undefined tabIndex tabIndex number The tab index to apply to this control. See general documentation about the tabindex HTML property target target '_blank' | '_parent' | '_self' | '_top' | undefined Where to display the linked URL, as the name for a browsing context (a tab, window, or <iframe>). variant variant 'secondary' | undefined

Changelog

1.0.1 (2024-11-11)

Section titled

Note: Version bump only for package @spectrum-web-components/link

1.0.0 (2024-10-31)

Section titled

BREAKING CHANGES

Section titled BREAKING CHANGES
  • remove deprecated 'static' references (#4818)

0.49.0 (2024-10-15)

Section titled

Features

Section titled Features
  • add static-color to replace static (#4808) (43cf086)

0.48.1 (2024-10-01)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.48.0 (2024-09-17)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.47.2 (2024-09-03)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.47.1 (2024-08-27)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.47.0 (2024-08-20)

Section titled

Features

Section titled Features
  • breadcrumbs: add Breadcrumbs component (#4578) (acd4b5e)

0.46.0 (2024-08-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.45.0 (2024-07-30)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.44.0 (2024-07-15)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.43.0 (2024-06-11)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.42.5 (2024-05-24)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.42.4 (2024-05-14)

Section titled

Bug Fixes

Section titled Bug Fixes
  • link: added feature to stop click propagation for disabled link (#4251) (64f26a5)

0.42.3 (2024-05-01)

Section titled

Bug Fixes

Section titled Bug Fixes
  • link: added feature to stop click propagation for disabled link (#4251) (64f26a5)

0.42.2 (2024-04-03)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.42.1 (2024-04-02)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.42.0 (2024-03-19)

Section titled

Features

Section titled Features
  • asset: use core tokens (99e76f4)

0.41.2 (2024-03-05)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.41.1 (2024-02-22)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.41.0 (2024-02-13)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.40.5 (2024-02-05)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.40.4 (2024-01-29)

Section titled

Bug Fixes

Section titled Bug Fixes
  • shared: update and expand attribute coverage in likeAnchor (5cb5f1d)

0.40.3 (2024-01-11)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.40.2 (2023-12-18)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.40.1 (2023-12-05)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.40.0 (2023-11-16)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.39.4 (2023-11-02)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.39.3 (2023-10-18)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.39.2 (2023-10-13)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.39.1 (2023-10-06)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.39.0 (2023-09-25)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.38.0 (2023-09-05)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.37.0 (2023-08-18)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.36.0 (2023-08-18)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.35.0 (2023-07-31)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.34.0 (2023-07-11)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.33.2 (2023-06-14)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.33.0 (2023-06-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.32.0 (2023-06-01)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.31.0 (2023-05-17)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.30.0 (2023-05-03)

Section titled 0.30.0 (2023-05-03)

Bug Fixes

Section titled Bug Fixes
  • add the missing quiet property to Link component (867ea43)
  • apply Focuable styles in class extensions (38f7afd)
  • correct @element jsDoc listing across library (c97a632)
  • expand sized functionality to support no default and returning to default values (acf3cfb)
  • include "type" in package.json, generate custom-elements.json (1a8d716)
  • include default export in the "exports" fields (f32407d)
  • include the "types" entry in package.json files (b432f59)
  • link: correct custom CSS processing configuration (2a24d5a)
  • link: correct white space in template/docs site (a48bd06)
  • link: correct white space management (a7a63dc)
  • link: process Spectrum CSS without overwriting specificity (9eb3d5c)
  • link: support "secondary" variant (3808b96)
  • link: test inner anchor attribute by accessing via focusElement (f4e97a1)
  • prevent tabindex=-1 elements from placing focus on their host (1ac1293)
  • review deque accessibility testing of docs site (31f43aa)
  • stop merging selectors in a way that alters the cascade (369388f)
  • update latest Spectrum CSS beta releases (d8d3acc)
  • update side effect listings (8160d3a)
  • update to latest spectrum-css packages (a5ca19f)
  • use latest @spectrum-css/* versions (c35eb86)

Features

Section titled Features
  • adopt DNA@7 base Spectrum CSS (e08cafd)
  • apply sizedMixin for t-shirt sizing (d7b63fb)
  • include all Dev Mode files in side effects (f70817c)
  • leverage "exports" field in package.json (321abd7)
  • leverage latest Spectrum button API (9caf2f6)
  • link: add download attribute to (fb02104)
  • link: add download attribute to (fefb28e)
  • link: add download attribute to (16894ba)
  • link: add download attribute to (0763504)
  • link: support rel attribute (df4b5a8)
  • link: update spectrum css input (e8cd359)
  • link: use core tokens (510173b)
  • shared pkg versions, devmode define warning, registry-conflicts docs (6e49565)
  • tabs: add sp-tab-panel element (b17d276)
  • use :focus-visable (via polyfill) instead of :focus (11c6fc7)
  • use @adobe/spectrum-css@2.15.1 (3918888)
  • use latest exports specification (a7ecf4b)
  • use SixedMixin to manage "size" property (8819821)

Performance Improvements

Section titled Performance Improvements
  • use "sideEffects" listing in package.json (7271614)
  • use imported TypeScript helpers instead of inlining them (cc2bd0a)

Reverts

Section titled Reverts
  • Revert "chore: release new versions" (a6d655d)

0.14.8 (2023-04-24)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.14.7 (2023-04-05)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.14.6 (2023-03-22)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.14.5 (2023-03-08)

Section titled

Bug Fixes

Section titled Bug Fixes
  • add the missing quiet property to Link component (867ea43)

0.14.4 (2023-02-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.14.3 (2023-01-23)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.14.2 (2023-01-09)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.14.1 (2022-12-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.14.0 (2022-11-21)

Section titled

Features

Section titled Features
  • link: use core tokens (510173b)

0.13.2 (2022-11-14)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.13.1 (2022-10-17)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.13.0 (2022-08-09)

Section titled

Features

Section titled Features
  • include all Dev Mode files in side effects (f70817c)

0.12.8 (2022-08-04)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.7 (2022-07-18)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.6 (2022-06-29)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.5 (2022-06-07)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.4 (2022-05-12)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.3 (2022-04-21)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.2 (2022-03-30)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.1 (2022-03-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.12.0 (2022-03-04)

Section titled

Features

Section titled Features
  • leverage latest Spectrum button API (9caf2f6)

0.11.4 (2022-02-22)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.11.3 (2022-01-26)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.11.2 (2022-01-07)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.11.1 (2021-12-13)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.11.0 (2021-11-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.10.1 (2021-11-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.10.0 (2021-11-02)

Section titled

Features

Section titled Features
  • adopt DNA@7 base Spectrum CSS (e08cafd)

0.9.8 (2021-10-12)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.9.7 (2021-09-20)

Section titled

Bug Fixes

Section titled Bug Fixes
  • link: support "secondary" variant (3808b96)

0.9.6 (2021-09-13)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.9.5 (2021-08-24)

Section titled

Bug Fixes

Section titled Bug Fixes
  • correct @element jsDoc listing across library (c97a632)

0.9.4 (2021-07-22)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.9.3 (2021-07-01)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.9.2 (2021-06-16)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.9.1 (2021-06-07)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.9.0 (2021-05-24)

Section titled

Bug Fixes

Section titled Bug Fixes
  • prevent tabindex=-1 elements from placing focus on their host (1ac1293)

Features

Section titled Features
  • tabs: add sp-tab-panel element (b17d276)

0.8.5 (2021-05-12)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.8.4 (2021-04-09)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.8.3 (2021-03-29)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.8.2 (2021-03-22)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.8.1 (2021-03-05)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.8.0 (2021-03-04)

Section titled

Features

Section titled Features
  • use latest exports specification (a7ecf4b)

0.7.1 (2021-02-11)

Section titled

Bug Fixes

Section titled Bug Fixes
  • expand sized functionality to support no default and returning to default values (acf3cfb)
  • update to latest spectrum-css packages (a5ca19f)

0.7.0 (2021-01-21)

Section titled

Bug Fixes

Section titled Bug Fixes
  • include the "types" entry in package.json files (b432f59)
  • stop merging selectors in a way that alters the cascade (369388f)
  • update latest Spectrum CSS beta releases (d8d3acc)
  • use latest @spectrum-css/* versions (c35eb86)

Features

Section titled Features
  • apply sizedMixin for t-shirt sizing (d7b63fb)
  • use SixedMixin to manage "size" property (8819821)
  • link: update spectrum css input (e8cd359)

0.6.0 (2021-01-13)

Section titled

Bug Fixes

Section titled Bug Fixes
  • include the "types" entry in package.json files (b432f59)
  • stop merging selectors in a way that alters the cascade (369388f)
  • update latest Spectrum CSS beta releases (d8d3acc)
  • use latest @spectrum-css/* versions (c35eb86)

Features

Section titled Features
  • apply sizedMixin for t-shirt sizing (d7b63fb)
  • use SixedMixin to manage "size" property (8819821)
  • link: update spectrum css input (e8cd359)

0.5.6 (2020-10-12)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.5.5 (2020-10-12)

Section titled

Bug Fixes

Section titled Bug Fixes
  • include default export in the "exports" fields (f32407d)

0.5.4 (2020-09-25)

Section titled

Bug Fixes

Section titled Bug Fixes
  • update side effect listings (8160d3a)

0.5.3 (2020-09-14)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.5.2 (2020-08-31)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.5.1 (2020-08-19)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.5.0 (2020-07-27)

Section titled

Bug Fixes

Section titled Bug Fixes
  • link: test inner anchor attribute by accessing via focusElement (f4e97a1)

Features

Section titled Features
  • link: support rel attribute (df4b5a8)

0.4.1 (2020-07-22)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.4.0 (2020-07-17)

Section titled

Bug Fixes

Section titled Bug Fixes
  • review deque accessibility testing of docs site (31f43aa)

Features

Section titled Features
  • leverage "exports" field in package.json (321abd7)

0.3.4 (2020-06-08)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.3.3 (2020-04-16)

Section titled

Performance Improvements

Section titled Performance Improvements
  • use "sideEffects" listing in package.json (7271614)

0.3.2 (2020-04-10)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.3.1 (2020-04-07)

Section titled

Bug Fixes

Section titled Bug Fixes
  • link: correct white space in template/docs site (a48bd06)

0.3.0 (2020-03-11)

Section titled

Features

Section titled Features
  • link: add download attribute to (fb02104)
  • link: add download attribute to (fefb28e)
  • link: add download attribute to (16894ba)
  • link: add download attribute to (0763504)

0.2.8 (2020-02-24)

Section titled

Bug Fixes

Section titled Bug Fixes
  • link: correct custom CSS processing configuration (2a24d5a)
  • link: process Spectrum CSS without overwriting specificity (9eb3d5c)

0.2.7 (2020-02-05)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.2.6 (2020-02-01)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.2.5 (2020-01-30)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.2.4 (2020-01-06)

Section titled

Bug Fixes

Section titled Bug Fixes
  • link: correct white space management (a7a63dc)

0.2.3 (2019-12-12)

Section titled

Bug Fixes

Section titled Bug Fixes
  • apply Focuable styles in class extensions (38f7afd)

0.2.2 (2019-12-02)

Section titled

Note: Version bump only for package @spectrum-web-components/link

0.2.1 (2019-11-27)

Section titled

Bug Fixes

Section titled Bug Fixes
  • include "type" in package.json, generate custom-elements.json (1a8d716)

0.2.0 (2019-11-19)

Section titled

Features

Section titled Features
  • use :focus-visable (via polyfill) instead of :focus (11c6fc7)
  • use @adobe/spectrum-css@2.15.1 (3918888)

0.1.4 (2019-10-14)

Section titled

Performance Improvements

Section titled Performance Improvements
  • use imported TypeScript helpers instead of inlining them (cc2bd0a)

0.1.3 (2019-10-03)

Section titled 0.1.3 (2019-10-03)

Note: Version bump only for package @spectrum-web-components/link