欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

从baidu-ife Task1-11 初尝移动端开发 -- 萌芽篇_html/css_WEB-ITnose

程序员文章站 2022-05-11 09:34:23
...
下面的内容在近期极有可能是错误的,只是我的一个小记录。如果你想参考的话,也欢迎参考;如果有着严重的错误认识,那你指出来是最好不过了

缘由

  • 阿里巴巴面试问到移动端方面严重被虐
  • baidu-ife Task 1-11:移动Web页面布局实践

效果图

正文

这是第一次尝试移动端开发,准备也是比较仓促。

相比PC端,移动端的屏幕比较复杂,不过布局也相对来说比较简单。移动端开发应该是可以分为移动端Web App 和 套壳开发。

目前 IFE 任务上只是要求 纯 css 实现简单的布局,我的认知还处在萌芽阶段。

实践

上面给的设计图好像并不是很准确的,为了方便按照设计图开发,首先需要对他进行转化。依照约定俗称的,用 PS 转化成 375px 宽的即可(iPhone6)。

然后为了比较好的响应移动端不同的设备,一般采用rem作为单位。

对 html 标签进行这样的设置

html {  /*font-size : 14px;*/  font-size: calc(100vw/26.785);  font-family: 'Microsoft YaHei',"Helvetica Neue", Helvetica, STHeiTi, Arial, sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;}

这样后面的 1rem = 14px,针对 PSD , 我们对每个像素除以14 即可转变为 rem,采用 scss 开发可以简化这个过程

@function px2rem($px, $base-font-size: 14px) {  @if (unitless($px)) {    @warn "Assuming #{$px} to be in pixels, attempting to convert it into pixels for you";    @return px2rem($px + 0px); // That may fail.  } @else if (unit($px) == rem) {    @return $px;  }  @return ($px / $base-font-size) * 1rem;}

这样以后使用的时候用 px2rem(40px) 这样的方法即可。

demo

https://github.com/HashCoding/task1-11

参考资料

移动前端开发和 Web 前端开发的区别是什么

使用Flexible实现手淘H5页面的终端适配