amp-fit-text
描述
扩展或缩小字体大小以使内容适应给定的空间。
必需的脚本
<script async custom-element="amp-fit-text" src="https://cdn.ampproject.org/v0/amp-fit-text-0.1.js"></script>
用法
扩展或缩小其字体大小,使其内容适合分配给它的空间。
amp-fit-text
组件允许您管理指定区域内文本的大小和适合度。对于 amp-fit-text
元素中包含的内容,amp-fit-text
组件会找到最适合将所有内容放入可用空间的字体大小。amp-fit-text
的预期内容是文本或其他内联内容,但也可能包含非内联内容。
在以下示例中,<amp-fit-text>
元素嵌套在 300x300 蓝色 div
块内。对于 <amp-fit-text>
元素,我们指定了 responsive
布局。因此,文本会根据 <amp-fit-text>
元素的宽度和高度 (200x200) 提供的纵横比进行响应式缩放,但文本不会超过其父元素的大小。
<div style="width: 300px; height: 300px; background:#005AF0; color: #FFF;"> <amp-fit-text width="200" height="200" layout="responsive"> Lorem ipsum dolor sit amet, has nisl nihil convenire et, vim at aeque inermis reprehendunt. </amp-fit-text> </div>
以下示例与上面的示例类似,但是在此示例中,我们指定了 max-font-size
为 22
,因此文本较小但仍适合该空间
<div style="width: 300px; height: 300px; background:#005AF0; color: #FFF;"> <amp-fit-text width="200" height="200" layout="responsive" max-font-size="22"> Lorem ipsum dolor sit amet, has nisl nihil convenire et, vim at aeque inermis reprehendunt. </amp-fit-text> </div>
溢出内容
如果 amp-fit-text
的内容溢出可用空间,即使指定了 min-font-size
,溢出的内容也会被截断和隐藏。基于 WebKit 和 Blink 的浏览器会为溢出的内容显示省略号。
在以下示例中,我们指定了 min-font-size
为 40
,并在 amp-fit-text
元素中添加了更多内容。这会导致内容超过其固定块父元素的大小,因此文本会被截断以适应容器。
<div style="width: 300px; height: 300px; background:#005AF0; color: #FFF;"> <amp-fit-text width="200" height="200" layout="responsive" min-font-size="40"> Lorem ipsum dolor sit amet, has nisl nihil convenire et, vim at aeque inermis reprehendunt. Lorem ipsum dolor sit amet, has nisl nihil convenire et, vim at aeque inermis reprehendunt </amp-fit-text> </div>
溢出内容的辅助功能考虑
虽然溢出的内容在视觉上会被截断以适应容器,但请注意它仍然存在于文档中。不要依赖溢出行为来简单地在页面中“填充”大量内容 - 虽然在视觉上它看起来可能合适,但它可能会导致页面对辅助技术(例如屏幕阅读器)的用户来说过于冗长,因为对于这些用户来说,所有截断的内容仍然会完整读取/宣布。
属性
min-font-size
以整数形式指定 amp-fit-text
可以使用的最小字体大小(以像素为单位)。
max-font-size
以整数形式指定 amp-fit-text
可以使用的最大字体大小(以像素为单位)。
常用属性
此元素包括扩展到 AMP 组件的常用属性。
样式
您可以使用标准 CSS 为 amp-fit-text
设置样式。特别是,您可以使用 text-align
、font-weight
、color
和许多其他 CSS 属性,主要的例外是 font-size
。
验证
请参阅 AMP 验证器规范中的amp-fit-text 规则。
您已经阅读了本文档很多次,但它并没有真正涵盖您的所有问题?也许其他人也有同样的感觉:在 Stack Overflow 上与他们联系。
转到 Stack Overflow 发现错误或缺少功能?AMP 项目强烈鼓励您的参与和贡献!我们希望您能成为我们开源社区的持续参与者,但我们也欢迎您对您特别感兴趣的问题做出一次性贡献。
转到 GitHub