资讯专栏INFORMATION COLUMN

移动端布局(less+rem)

lk20150415 / 2316人阅读

摘要:这里只是粘贴了一部分宽度高度行高背景尺寸背景尺寸,设置宽度,高度将的屏幕分成分,所以就除了,用函数来添加单位这里是相对的屏幕的,相信大部分公司移动端的设计图都是根据设计的。

html

  在html使用了网上阿里的函数来计算根元素的字体(当然可以写在其他地方,只要生效就可以)




  
  
  
  xxx
  
  
  


  

  
  
  


  这里主要使用了函数计算根元素字体,将屏幕分成了10分,在iphone6下面根元素字体就是37.5px;

less函数

  这是使用了less的unit函数来添加单位,将所有的需要转化的css都写到一个公共的less文件里面,通过@import导入进去。(这里只是粘贴了一部分)

.fs(@px) {
  font-size: unit(@px / 37.5, rem);
}

/*----- 宽度 -----*/
.w(@px) {
  width: unit(@px / 37.5, rem);
}

/*----- 高度 -----*/
.h(@px) {
  height: unit(@px / 37.5, rem);
}

/*----- 行高 -----*/
.lh(@px) {
  line-height: unit(@px / 37.5, rem);
}

/*----- 背景尺寸 -----*/
.b_s(@px, @px) {
  -webkit-background-size: unit(@px / 37.5, rem) unit(@px / 37.5, rem);
  background-size: unit(@px / 37.5, rem) unit(@px / 37.5, rem);
}
/**
* [背景尺寸,设置宽度,高度auto]
 */
.b_s1(@px) {
  -webkit-background-size: unit(@px / 37.5, rem) auto;
  background-size: unit(@px / 37.5, rem) auto;
}

.b_s2(@px) {
  -webkit-background-size: auto unit(@px / 37.5, rem);
  background-size: auto unit(@px / 37.5, rem);
}

/*----- margin -----*/
.mt(@px) {
  margin-top: unit(@px / 37.5, rem);
}
.mr(@px) {
  margin-right: unit(@px / 37.5, rem);
}
.mb(@px) {
  margin-bottom: unit(@px / 37.5, rem);
}
.ml(@px) {
  margin-left: unit(@px / 37.5, rem);
}

  将iphone6的屏幕分成10分,所以就除了37.5,用unit函数来添加单位(这里是相对iphone6的屏幕的,相信大部分公司移动端的设计图都是根据iphone6设计的)。

在其他less文件里面使用
@import "../less/bass.less";
.sort-title {
  .fs(17);
  color: @color0;
  font-family: PingFang-SC-Medium;
  .mt(20);
  .mb(15);
}

   .fs, .mt这些就是less的函数,最终编译好的文件就是rem了。(总之,在iphon6或者iphone7,屏幕是376px,无论你上面怎么分配比例,在chrome里面审查你编译后的css,鼠标放到元素上会显示大小,这时和你设计图上的大小相等就可以。)

总结

  本人感觉这样还是比较方便的,不用像那样设置根元素100px,然后根据sublime的插件来计算,或者更复杂的计算等等。我们项目使用angular4,angular4可以自动编译less,只需向上面那样直接调用函数就可以,而且可以做一些运算,还是比较方便的,当然vue里面你只要安装less插件,就可以让vue-cli来编译了,如果这些你都没用,你还可以通过Koala来编译成css,通过link来引入。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/113004.html

相关文章

  • 移动(手机)页面自适应解决方案—rem布局

    摘要:移动端手机端页面自适应解决方案布局假设设计妹妹给我们的设计稿尺寸为。 移动端(手机端)页面自适应解决方案—rem布局 假设设计妹妹给我们的设计稿尺寸为750 * 1340。结合网易、淘宝移动端首页html元素上的动态font-size属性、设计稿尺寸、前端与设计之间协作流程一般分为下面两种: 一、网易做法: 引入:页面开头处引入下面这段代码,用于动态计算font-size (funct...

    dinfer 评论0 收藏0
  • 移动(手机)页面自适应解决方案—rem布局

    摘要:移动端手机端页面自适应解决方案布局假设设计妹妹给我们的设计稿尺寸为。 移动端(手机端)页面自适应解决方案—rem布局 假设设计妹妹给我们的设计稿尺寸为750 * 1340。结合网易、淘宝移动端首页html元素上的动态font-size属性、设计稿尺寸、前端与设计之间协作流程一般分为下面两种: 一、网易做法: 引入:页面开头处引入下面这段代码,用于动态计算font-size (funct...

    1fe1se 评论0 收藏0
  • 移动适配方案

    摘要:业务环境是决定整体项目的适配方案的核心因素。而淘宝的主站和类似,分为移动端页面和端页面,端页面同样有着左右的留白,这也是为了让用户能够在宽屏的时候将注意力集中在中间区域。 移动端适配方案 移动端适配方案是一个老生常谈的话题,但是对于不同的项目、不同的业务场景可能会需要不同的适配方案来进行移动端适配,向下兼容的baseline也需要提前订好。 整体宽高 其实移动端适配就和下面的玩具一样,...

    feng409 评论0 收藏0
  • Next框架与主流工具的整合(二)—— 完善与优化

    摘要:从概念来说,就是设备的物理像素与设备独立像素也就是逻辑像素,以下就称为逻辑像素的比率。通过这个标签,我们可以实现初始缩放,就可以达到的逻辑像素眼睛在设备上看起来的,换句话说可以在上充满竖屏的整个宽度。 前言:18年12月24日项目成功上线了,在经历了两周的线上bug、UI以及代码优化后,解决了不少问题,于是再完善与优化一下这个项目。 布局优化 高清配置 antd-mobile 自定义...

    teren 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<