查看: 764|回复: 0

[HTML代码] Rem是如何实现自适应布局的?

发表于 2018-1-27 10:33:46

作为前端工程师的我们,在h5页面布局的过程中会使用rem布局,大家都知道rem是相对长度单位,但是作为前端的我们该如何去让rem布局自适应iphone4、iphone6、iphone6、iphone6plus的呢?


那我们都看到天猫在手机网页端中,是根据手机大小的不一样去自适应的,那么我们接下来让我们自己的h5网页的页面自适应手机设备


一、首先我们先看一下拥有几亿用户的淘宝天猫是怎么做的呢?


iphone4

4.jpg


iphone6


6.jpg


iphone 6 plus

6p.jpg


我们看到整个页面中改变了根元素html中的属性font-size的大小,就做到让按钮中字体的大小发生变化。


二、使用在自己的项目中

我们使用rem在页面中做一个按钮:

  1. <style>
  2. html{
  3. font-size:32px;
  4. }
  5. .btn {
  6. height: 1.2rem;
  7. line-height: 1.2rem;
  8. font-size: 0.43rem;
  9. margin:0 2rem;
  10. background: #06c;
  11. color: #fff;
  12. border-radius: 5px;
  13. text-decoration: none;
  14. text-align: center;
  15. letter-spacing:0.2rem;
  16. }
  17. </style>
  18. <body>
  19. <div class="btn">确定</div>
  20. </body>
复制代码

接着有两种方案

① 我们可以想淘宝一样,通过使用js去控制根元素中html的font-size的大小,进而改变按钮的大小。

② 也可以使用自己的知识点,使用css媒体查询去设置页面中根元素的font-size属性。


我这里就介绍使用css媒体查询设置font-size的属性,

  1. @media screen and (min-width: 310px) {
  2. html{
  3. font-size:34px;
  4. }
  5. }
  6. @media screen and (min-width: 360px) {
  7. html{
  8. font-size:37.5px;
  9. }
  10. }
  11. @media screen and (min-width: 410px) {
  12. html{
  13. font-size:41.4px;
  14. }
  15. }
复制代码

最后我们可以去谷歌中去测试,结果如下图

未标题-1.jpg


这就是我对rem自适应布局的研究和理解的总结,希望对大家有帮助,我会持续进步更新我的知识库,嘻嘻*_*




回复

使用道具 举报