- 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.
- Instant Testing with CasperJS
- 從0到1:HTML+CSS快速上手
- Java面向對象程序開發及實戰
- 單片機應用與調試項目教程(C語言版)
- Java Fundamentals
- Internet of Things with ESP8266
- Java零基礎實戰
- Java語言程序設計教程
- Julia 1.0 Programming Complete Reference Guide
- TypeScript 2.x By Example
- C++ System Programming Cookbook
- 計算語言學導論
- Laravel 5.x Cookbook
- Learning Swift
- Java并發編程深度解析與實戰