重要事項:此文件不適用於您目前選取的格式 email!
amp-lightbox
描述
在全螢幕「燈箱」模式中顯示元素。
必要指令碼
<script async custom-element="amp-lightbox" src="https://cdn.ampproject.org/v0/amp-lightbox-1.0.js"></script>
<script async custom-element="amp-lightbox" src="https://cdn.ampproject.org/v0/amp-lightbox-1.0.js"></script> <link rel="stylesheet" href="https://cdn.ampproject.org/v0/amp-lightbox-1.0.css">
支援的版面配置
用法
amp-lightbox
元件定義了在全螢幕覆蓋/模式中顯示的子元素。當使用者輕觸或點擊元素 (例如,按鈕) 時,點擊元素之 on
屬性中參照的 amp-lightbox
ID 會觸發燈箱佔據整個視口,並顯示 amp-lightbox
的子元素。
若要在燈箱中顯示圖片,還有 <amp-image-lightbox>
元件。若要在燈箱中顯示圖片庫,您可以使用 <amp-lightbox-gallery>
。
在有效的 AMP 文件之外獨立使用
Bento 讓您可以在非 AMP 頁面中使用 AMP 元件,而無需完全採用有效的 AMP。您可以取得這些元件,並將其置入不支援 AMP 的架構和 CMS 實作中。如要瞭解詳情,請參閱我們的指南在非 AMP 頁面中使用 AMP 元件。
若要尋找 amp-lightbox
的獨立版本,請參閱 bento-lightbox
。
屬性
id
燈箱的唯一識別碼。
layout
(必填)
必須設定為 nodisplay
。
動畫
定義開啟燈箱的動畫樣式。依預設,這會設定為 fade-in
。有效值為 fade-in
、fly-in-bottom
和 fly-in-top
。
此屬性可以設定為根據 媒體查詢 使用不同的選項。
可滾動
當 scrollable
屬性存在時,燈箱的內容可以在溢出燈箱高度時滾動。
動作
open
(預設)
開啟燈箱。
關閉
關閉燈箱。
樣式
您可以使用標準 CSS 設定 amp-lightbox
的樣式。
無障礙功能
按下鍵盤上的 Esc 鍵或將焦點設定在燈箱外部的元素上會關閉燈箱。或者,在燈箱內的一個或多個元素上設定 on
屬性,並將其方法設定為 close
,即可在輕觸或點擊元素時關閉燈箱。關閉後,焦點將送回觸發元素。
基於無障礙功能考量,如果使用者未在開啟時於燈箱中提供焦點 (使用 autofocus
屬性或強制在開啟時設定焦點),則焦點會設定在使用 on:tap
的第一個元素上。否則,系統會建立僅限螢幕閱讀器可見的關閉按鈕,並將焦點設定在其上,並可選擇性使用 data-close-button-aria-label
屬性值。
<button on="tap:quote-lb">See Quote</button> <amp-lightbox id="quote-lb" layout="nodisplay"> <blockquote> "Don't talk to me about JavaScript fatigue" - Horse JS </blockquote> <button on="tap:quote-lb.close">Nice!</button> </amp-lightbox>
版本注意事項
實驗性 1.0
版本的 amp-lightbox
與 0.1
版本有以下差異
- 此元件目前不支援修改瀏覽器歷史記錄狀態。
- 不支援
data-close-button-aria-label
,且很快將被支援slot="close-button"` 取代。
animate-in
已重新命名為animation
。
您已閱讀此文件十幾次,但它仍然沒有涵蓋您的所有問題嗎?也許其他人也有同感:請在 Stack Overflow 上與他們交流。
前往 Stack Overflow 發現錯誤或缺少功能嗎?AMP 專案強烈鼓勵您的參與和貢獻!我們希望您能成為我們開放原始碼社群的長期參與者,但我們也歡迎您針對您特別關注的問題做出一次性的貢獻。
前往 GitHub