amp-inline-gallery
描述
沿水平轴显示多个相似的内容片段,带有可选的分页点和缩略图。
必需脚本
<script async custom-element="amp-inline-gallery" src="https://cdn.ampproject.org/v0/amp-inline-gallery-0.1.js"></script>
支持的布局
用法
<amp-inline-gallery>
组件使用 <amp-base-carousel>
来显示幻灯片。该页面必须在文档头中包含两个组件所需的脚本。典型用法可能如下所示
<amp-inline-gallery layout="container"> <amp-base-carousel class="gallery" layout="responsive" width="3.6" height="2" snap-align="center" loop visible-count="1.2" lightbox > <amp-img src="/static/inline-examples/images/image1.jpg" layout="responsive" width="450" height="300" ></amp-img> <amp-img src="/static/inline-examples/images/image2.jpg" layout="responsive" width="450" height="300" ></amp-img> <amp-img src="/static/inline-examples/images/image3.jpg" layout="responsive" width="450" height="300" ></amp-img> </amp-base-carousel> <amp-inline-gallery-pagination layout="nodisplay" inset> </amp-inline-gallery-pagination> </amp-inline-gallery>
上面的示例显示使用 3:2 的宽高比的幻灯片,两侧分别显示 10% 的幻灯片。在 amp-base-carousel
上使用 3.6:2 的宽高比来一次显示 1.2 个幻灯片。
包含分页指示器
<amp-inline-gallery-pagination>
组件确定分页指示器的显示方式。默认情况下,不显示分页指示器。
当 amp-base-carousel
中有八个或更少的幻灯片时,分页指示器呈现为点。对于九个或更多幻灯片,分页指示器呈现当前幻灯片编号和幻灯片总数,并与右对齐。
分页指示器的位置默认为轮播图下方。将 inset 属性添加到 <amp-inline-gallery-pagination>
标记会将分页指示器覆盖在轮播图上。要为不同的屏幕尺寸使用不同的样式,请使用 media 属性
<amp-inline-gallery layout="container"> <amp-base-carousel>…</amp-base-carousel> <amp-inline-gallery-pagination media="(max-width: 599px)" layout="nodisplay" inset > </amp-inline-gallery-pagination> <amp-inline-gallery-pagination media="(min-width: 600px)" layout="fixed-height" height="24" > </amp-inline-gallery-pagination> </amp-inline-gallery>
amp-inline-gallery-pagination
属性
inset
(可选)
将分页指示器显示为插入式,覆盖轮播图本身。使用 inset
时,应为 <amp-inline-gallery-pagination>
元素提供 layout="nodisplay"
。
通用属性
<amp-inline-gallery-pagination>
元素包含扩展到 AMP 组件的通用属性。
包含缩略图
除了分页指示器之外,amp-inline-gallery
组件还可以显示缩略图预览。默认情况下,图库中不显示缩略图。使用缩略图时,请记住以下最佳实践
- 避免在少于八个幻灯片的情况下同时使用分页指示器和缩略图。指示点在较小的图库中是多余的。
- 当同时使用分页指示器和缩略图时,请将分页指示器插入以覆盖幻灯片。查看下面的代码示例以查看示例。
- 使用
media
属性在较小的移动设备上显示分页指示器,并在较大的屏幕上显示缩略图。 - 通过使用
srcset
在缩略图中加载较低分辨率的图像。您可以省略<amp-img>
上的sizes
,它将根据渲染的宽度自动生成。
下面的示例演示了一个在较大分辨率下可见缩略图的图库。
<amp-inline-gallery layout="container"> <!-- The amp-layout with layout="container" is used to display the pagination on top of the carousel instead of the thumbnails. You can also use a div with `position: relative;` --> <amp-layout layout="container"> <amp-base-carousel class="gallery" layout="responsive" width="3" height="2" snap-align="center" loop > <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/779/600/400" srcset="https://picsum.photos/id/779/150/100 150w, https://picsum.photos/id/779/600/400 600w, https://picsum.photos/id/779/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/1048/600/400" srcset="https://picsum.photos/id/1048/150/100 150w, https://picsum.photos/id/1048/600/400 600w, https://picsum.photos/id/1048/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/108/600/400" srcset="https://picsum.photos/id/108/150/100 150w, https://picsum.photos/id/108/600/400 600w, https://picsum.photos/id/108/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/130/600/400" srcset="https://picsum.photos/id/130/150/100 150w, https://picsum.photos/id/130/600/400 600w, https://picsum.photos/id/130/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/14/600/400" srcset="https://picsum.photos/id/14/150/100 150w, https://picsum.photos/id/14/600/400 600w, https://picsum.photos/id/14/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/165/600/400" srcset="https://picsum.photos/id/165/150/100 150w, https://picsum.photos/id/165/600/400 600w, https://picsum.photos/id/165/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/179/600/400" srcset="https://picsum.photos/id/179/150/100 150w, https://picsum.photos/id/179/600/400 600w, https://picsum.photos/id/179/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/392/600/400" srcset="https://picsum.photos/id/392/150/100 150w, https://picsum.photos/id/392/600/400 600w, https://picsum.photos/id/392/1200/800 1200w" > </amp-img> <amp-img class="slide" layout="flex-item" src="https://picsum.photos/id/468/600/400" srcset="https://picsum.photos/id/468/150/100 150w, https://picsum.photos/id/468/600/400 600w, https://picsum.photos/id/468/1200/800 1200w" > </amp-img> </amp-base-carousel> <!-- If using fewer than 8 slides, consider adding something like media="(max-width: 799px)". --> <amp-inline-gallery-pagination layout="nodisplay" inset> </amp-inline-gallery-pagination> </amp-layout> <amp-inline-gallery-thumbnails media="(min-width: 800px)" layout="fixed-height" height="96" > </amp-inline-gallery-thumbnails> </amp-inline-gallery>
amp-inline-gallery-thumbnails
属性
媒体查询
可以配置 <amp-inline-gallery-thumbnails>
的属性,以根据 媒体查询使用不同的选项。
aspect-ratio-height
(可选)
与 aspect-ratio-width
一起使用时,指定宽高比。宽高比默认为与 <amp-base-carousel>
中的幻灯片匹配。
aspect-ratio-width
(可选)
与 aspect-ratio-height
一起使用时,指定宽高比。宽高比默认为与 <amp-base-carousel>
中的幻灯片匹配。
loop
(可选)
循环缩略图。采用值 "true"
或 "false"
。默认为 "true"
。
通用属性
<amp-inline-gallery-thumbnails>
元素包含扩展到 AMP 组件的通用属性。
属性
通用属性
此元素包含扩展到 AMP 组件的通用属性。
验证
请参阅 AMP 验证器规范中的 amp-inline-gallery 规则。
您已经阅读了本文档十几次,但它并没有真正涵盖您的所有问题?也许其他人也有同样的感觉:在 Stack Overflow 上与他们联系。
转到 Stack Overflow 发现错误或缺少功能?AMP 项目强烈鼓励您的参与和贡献!我们希望您能成为我们开源社区的长期参与者,但我们也欢迎您为特别感兴趣的问题做出一次性贡献。
转到 GitHub