Struct silkenweb_html::elements::ABuilder
source · pub struct ABuilder(_);
Implementations§
source§impl ABuilder
impl ABuilder
pub fn id(self, value: impl AttributeValue<String>) -> Self
pub fn class(self, value: impl AttributeValue<String>) -> Self
sourcepub fn download(self, value: impl AttributeValue<String>) -> Self
pub fn download(self, value: impl AttributeValue<String>) -> Self
Prompts the user to save the linked URL instead of navigating to it. Can be used with or without a value:
- Without a value, the browser will suggest a filename/extension, generated from various sources:
- The Content-Disposition HTTP header
- The final segment in the URL path
- The media type (from the (Content-Type header, the start of a data: URL, or Blob.type for a blob: URL)
- Defining a value suggests it as the filename.
/
and\
characters are converted to underscores (_). Filesystems may forbid other characters in filenames, so browsers will adjust the suggested name if necessary.
Notes:
- download only works for same-origin URLs, or the blob: and data: schemes.
- If Content-Disposition has a different filename than download, the header takes priority. (If
Content-Disposition: inline
, Firefox prefers the header while Chrome prefers download.)
sourcepub fn href(self, value: impl AttributeValue<String>) -> Self
pub fn href(self, value: impl AttributeValue<String>) -> Self
The URL that the hyperlink points to. Links are not restricted to HTTP-based URLs — they can use any URL scheme supported by browsers:
- Sections of a page with fragment URLs
- Pieces of media files with media fragments
- Telephone numbers with tel: URLs
- Email addresses with mailto: URLs
- While web browsers may not support other URL schemes, web sites can with registerProtocolHandler()
sourcepub fn hreflang(self, value: impl AttributeValue<String>) -> Self
pub fn hreflang(self, value: impl AttributeValue<String>) -> Self
Hints at the human language of the linked URL. No built-in functionality. Allowed values are the same as the global lang attribute.
sourcepub fn ping(self, value: impl AttributeValue<String>) -> Self
pub fn ping(self, value: impl AttributeValue<String>) -> Self
A space-separated list of URLs. When the link is followed, the browser will send POST requests with the body PING to the URLs. Typically for tracking.
sourcepub fn rel(self, value: impl AttributeValue<String>) -> Self
pub fn rel(self, value: impl AttributeValue<String>) -> Self
The relationship of the linked URL as space-separated link types.
sourcepub fn target(self, value: impl AttributeValue<String>) -> Self
pub fn target(self, value: impl AttributeValue<String>) -> Self
Where to display the linked URL, as the name for a browsing context (a tab, window, or
<iframe>
). The following keywords have special meanings for where to load the URL:
_self
: the current browsing context. (Default)_blank
: usually a new tab, but users can configure browsers to open a new window instead._parent
: the parent browsing context of the current one. If no parent, behaves as _self._top
: the topmost browsing context (the “highest” context that’s an ancestor of the current one). If no ancestors, behaves as _self.
Note: When using target, add rel=“noreferrer noopener” to avoid exploitation of the window.opener API;
Note: Linking to another page with target=“_blank” will run the new page in the same process as your page. If the new page executes JavaScript, your page’s performance may suffer. This can also be avoided by using rel=“noreferrer noopener”.
sourcepub fn type_(self, value: impl AttributeValue<String>) -> Self
pub fn type_(self, value: impl AttributeValue<String>) -> Self
Hints at the linked URL’s format with a MIME type. No built-in functionality.