- AMP:Building Accelerated Mobile Pages
- Ruadhan O'Donoghue
- 266字
- 2021-07-08 10:04:05
Using responsive layout
Responsive design is built directly into AMP, and is one of the most useful layouts offered by the layout attribute. We saw how to use amp-img with the responsive layout in our news article example from the last chapter:
<amp-img
src="img/feature.jpg"
width="768"
height="305"
layout="responsive" >
</amp-img>
Note that even though we are using the responsive layout, we still need to specify the width and height attributes. Shouldn't it just grow and shrink to fit the viewport? There are two reasons why the width and height attributes are needed:
- To calculate the aspect ratio of the image so that it is displayed correctly as it is resized.
- To calculate the page layout before anything is downloaded; this is required by AMP's static layout system.
Our example from the last chapter was a nice first attempt at a news article page, but there's a problem with it. It's not optimized for larger screens. When viewed on a larger screen, the main feature image becomes blocky and pixelated.
Why does this matter--isn't AMP just for small screens? Doesn't the M in AMP stand for Mobile? Well, no and yes (respectively), but it's more nuanced than this. Even in a mobile format, there is a multitude of different device screen sizes that must be accommodated; our AMP pages should look good on all of them. And there is also the idea of Canonical AMP pages: an approach to web publishing where AMP is used exclusively to build a website, for desktop and mobile. In both theses cases, responsive design helps to deal with the wide variety of viewport sizes that must be handled.
- Linux C/C++服務器開發實踐
- JavaScript語言精髓與編程實踐(第3版)
- R語言數據可視化之美:專業圖表繪制指南
- Java技術手冊(原書第7版)
- Unity 5.x By Example
- 大模型RAG實戰:RAG原理、應用與系統構建
- Visual C#.NET程序設計
- 劍指大數據:企業級數據倉庫項目實戰(在線教育版)
- SQL Server數據庫管理與開發兵書
- 搞定J2EE:Struts+Spring+Hibernate整合詳解與典型案例
- Distributed Computing in Java 9
- Practical Predictive Analytics
- Drupal Search Engine Optimization
- Python編程快速上手2
- Mapping with ArcGIS Pro