Skip to content

CSS: alert

.instui-alert · stable — Вбудоване повідомлення з кольоровою стрічкою статусу та замаскованим значком статусу зі спільного набору іконок.

Кастомний -icon-<name> замінює значок статусу, але зберігає кольорову стрічку варіанту; заповнення стрічки повторно застосовується з вищою специфічністю, щоб спільний рендерер іконок його не перезаписав. Пряма кнопка закриття за замовчуванням мала; додайте модифікатор розміру, щоб перевизначити.

Source: alert.css

TIP

Розширення JS — CSS цього компонента рендериться й працює самостійно; поєднуйте його з @pantoken/interactions, щоб додати інтерактивну поведінку. Його модифікатор -timeout керується цією поведінкою. Див. таблицю модифікаторів нижче.

Доступність

Для важливого повідомлення додайте role="alert" або область aria-live, щоб допоміжні технології оголосили його; елемент закриття — це кнопка закриття з міткою (у прикладі .instui-close-button несе aria-label="Close").

Використання

css
@import "@pantoken/components/components.css";
@import "@pantoken/components/alert.css";

Приклади

html
<div class="instui-alert -icon-megaphone --mb-md">
  An alert with the default <code>info</code> color, and a custom icon.
</div>
<div class="instui-alert -color-success">
  Congratulations! You're using the "success" color.
  <button class="instui-close-button" aria-label="Close"></button>
</div>

Структура

text
.instui-alert
  ‹content›
  close-button (component, 0..1)
flowchart TD n0[".instui-alert"]:::cssdoc-root n1[/"‹content›"/]:::cssdoc-slot n2(["close-button"]):::cssdoc-component n0 --> n1 n0 -.->|0..1| n2 click n2 "/api/css/close-button.md" classDef cssdoc-root stroke-width:1px; classDef cssdoc-part stroke-width:1px; classDef cssdoc-slot stroke-width:1px; classDef cssdoc-component stroke-width:1px;

Слоти

СлотОпис
contentВміст повідомлення попередження; може містити кнопку відхилення.

Модифікатори

МодифікаторОпис
.-color-dangerПовідомлення про помилку.
.-color-infoІнформаційне (за замовчуванням).
.-color-successПозитивне/підтвердне повідомлення.
.-color-warningПопереджувальне повідомлення.
.-has-shadow-falseAlias — maps to .-without-shadow.
.-icon-*Замініть значок статусу на кастомну іконку (наприклад, -icon-megaphone), яка залишається білою на кольоровій стрічці варіанту.
.-render-custom-icon-*Застаріле — The former renderCustomIcon prop; still works as an alias, but use -icon-<name> (or override --pantoken-alert-glyph) instead.
.-screen-reader-onlyВізуально приховано, але оголошується.
.-timeoutInteraction — The alert will automatically dismiss after a default of 5 seconds.
.-timeout-1Одна секунда до автоматичного закриття.
.-timeout-2Дві секунди до автоматичного закриття.
.-timeout-3Три секунди до автоматичного закриття.
.-timeout-4Чотири секунди до автоматичного закриття.
.-timeout-5П’ять секунд до автоматичного закриття.
.-variant-errorЗастаріле — use .-color-danger.
.-variant-infoЗастаріле — use .-color-info.
.-variant-successЗастаріле — use .-color-success.
.-variant-warningЗастаріле — use .-color-warning.
.-without-shadowВидалити тінь підйому за замовчуванням (InstUI hasShadow={false}).

Псевдоелементи

ПсевдоелементОпис
::afterБілий значок статусу, замаскований і центрований над стрічкою.
::beforeСуцільна стрічка статусу кольору варіанту, притиснута до заокругленого початкового краю.

Користувацькі властивості

ВластивістьТипЗа замовчуваннямОпис
--pantoken-alert-glyph<url>Низькорівневий джерело значка статусу; -icon-<name> встановлює його за вас. Перезаписуйте для кастомної іконки (URL-кодоване SVG).
--pantoken-alert-icon-bg<color>Кольорове заповнення стрічки статусу за значком; кожен варіант -color-* встановлює своє власне.
--timeout<integer>Мілісекунди до автоматичного закриття; 0 вимикає це. Потребує бандла інтерактивності оповіщення.

Використано токенів

TokenТипЗначення
--instui-component-alert-background<color>LightDarklight-dark(#ffffff, #171B21)
--instui-component-alert-border-radius<length>0.75rem
--instui-component-alert-border-stylesolid
--instui-component-alert-border-width<length>0.125rem
--instui-component-alert-color<color>LightDarklight-dark(#273540, #ffffff)
--instui-component-alert-content-font-family[ <font-family-name> | <generic-font-family> ]#Atkinson Hyperlegible Next, "Helvetica Neue", Helvetica, Arial, sans-serif
--instui-component-alert-content-font-size<length>1rem
--instui-component-alert-content-font-weight<integer>400
--instui-component-alert-content-line-height<percentage>125%
--instui-component-alert-content-padding-horizontal<length>1.5rem
--instui-component-alert-content-padding-vertical<length>0.75rem
--instui-component-alert-danger-border-color<color>#E62429
--instui-component-alert-danger-icon-background<color>#E62429
--instui-component-alert-icon-color<color>#ffffff
--instui-component-alert-info-border-color<color>#2B7ABC
--instui-component-alert-info-icon-background<color>#2B7ABC
--instui-component-alert-success-border-color<color>#03893D
--instui-component-alert-success-icon-background<color>#03893D
--instui-component-alert-warning-border-color<color>#CF4A00
--instui-component-alert-warning-icon-background<color>#CF4A00
--instui-component-base-button-medium-height<length>2.5rem
--instui-component-base-button-small-height<length>2rem
--instui-elevation-abovenone | <shadow>#
--instui-icon-circle-check<image>url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22%2F%3E%3C%2Fsvg%3E')
--instui-icon-circle-x<image>url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22m15%209-6%206%22%2F%3E%3Cpath%20d%3D%22m9%209%206%206%22%2F%3E%3C%2Fsvg%3E')
--instui-icon-info<image>url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M12%2016v-4%22%2F%3E%3Cpath%20d%3D%22M12%208h.01%22%2F%3E%3C%2Fsvg%3E')
--instui-icon-triangle-alert<image>url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m21.73%2018-8-14a2%202%200%200%200-3.48%200l-8%2014A2%202%200%200%200%204%2021h16a2%202%200%200%200%201.73-3%22%2F%3E%3Cpath%20d%3D%22M12%209v4%22%2F%3E%3Cpath%20d%3D%22M12%2017h.01%22%2F%3E%3C%2Fsvg%3E')
--instui-spacing-space-xs<length>0.25rem
--pantoken-glyph<url>url("data:image/svg+xml

Підкомпоненти

Пов'язані

  • close-button — Елемент відхилення, який може міститися в оповіщенні.