#+TITLE: Solomon 现已支持 AMP #+PUBLISHED: 2017-03-26 #+UPDATED: 2019-10-11 #+SLUG: solomon-now-supports-amp #+TAGS: amp blog #+BEGIN_QUOTE Solomon 现已支持 AMP。你可以访问[[/amp/post/solomon-now-supports-amp][本篇文章的 AMP 版本]]体验。 :) #+END_QUOTE * AMP 是什么? *AMP (Accelerated Mobile Pages)* 是 Google 推出的一门能加快移动端页面呈现速度的 技术。 经测试,能提高 *15% ~ 85%* 的页面加载性能:[[https://www.ampproject.org/how-it-works/][Accelerated Mobile Pages – A new approach to web performance]]。此外,大家还看一下 [[https://www.youtube.com/watch?v=lBTCB7yLs8Y&t=131s][AMP 官方的介绍视频]],里面小哥的演 技非常逼真。:) * AMP 结构简述 AMP 主要由 *AMP HTML* , *AMP Runtime* 和 *AMP Component* 组成: *AMP HTML* 是 HTML 的一个 *子集* 。 一个规范的 AMP HTML 有以下的几个 *必要条件* : 1. 以 ~~ 开头; 2. 顶层标签为 ~~ 或 ~~ ; 3. 必须包括 ~~ 和 ~~ 标签,他们在 HTML 中是可选的; 4. ~~ 放在 ~~ 的开头; 5. ~~ 做为 第二个元素; 6. ~~ 这个 metadata 指向和这个 页面相同内容的非 AMP 版本的页面; 7. ~~ 中必须包含 ~~ ; 8. ~~ 中必须包含 [[https://amp.dev/documentation/guides-and-tutorials/learn/spec/amp-boilerplate/][AMP Boilerplate Code]]。 除了以上的要求之外,AMP HTML 还有其他的限制: 多数的 HTML 标签在 AMP HTML 中都可以使用,除了少数的标签,例如 ~~ , ~