适配常见问题

一、单位

  • px 固定的单位;
  • em 是根据其父元素的字体大小来设置(太多的不确定性);
  • rem 是根据网页的根元素(html)来设置字体大小。
  • vw window.innerWidth 的数值的 1%
  • vh window.innerHeight 的数值的 1%

字体适配

html{
  /* 以16px为基数*/
  font-size: 100%;
}

@media screen and (max-width: 414px){
    html{
       /*// 以8px为基数*/
        font-size: 50%;
    }
}

@media screen and (min-width: 1366px){
    html{
      /*// 以16px为基数*/
        font-size: 100%; 
    }
}
.lma{
    font-size: 1rem;
    padding: 0.3rem;
}

二、 srcset 提供多图像源

2x、3x 表示目标屏幕的像素密度;400w、600w表示目标浏览器的宽度的限度,如浏览器宽度550w时,匹配600w的src。
通过window.devicePixelRatio来获取像素比

三、 边框1px适配:伪类+transform

原理是把原先元素的 border 去掉,然后利用 :before 或者 :after 重做 border ,并 transform 的 scale 缩小一半,原先的元素相对定位,新做的 border 绝对定位。

transform: scaleY(0.5);
transform: scale(0.5);

四、布局

前端的布局发展历程经历了下面几个过程:

表格布局 --> 定位布局 --> 浮动布局 --> flexbox布局 --> gridbox布局

flexbox 是一维布局,只能在一条直线上放置你的内容区块;
适配常见问题_第1张图片
而grid是一个二维布局。它除了可以灵活的控制水平方向之外,还能轻易的控制垂直方向的布局模式。
适配常见问题_第2张图片

参考链接: https://www.cnblogs.com/pinga...

你可能感兴趣的:(css)