移动端的适配方案

1. 使用meta viewport进行适配

 <meta name="viewport" content="width=device-width, user-scalable=1,initial-scale=1, maximum-scale=1,minimum-scale=1">

2. 媒体查询(响应式布局)

link元素中的CSS媒体查询

<link rel="stylesheet"  href="mobile.css" media="(max-width: 500px)">

层叠样式表的CSS媒体查询

 @media (max-width: 500px) {
	 .facet_sidebar {
		display: none;
	}
}        
@media (min-width:325px) and (max-width: 800px) { 
    body{
        background-color: black;
    }
}

媒体查询会根据不同的条件进行选择css来进行布局,对于图片的响应式设计:

  • 等比例缩放图片
img{  
    width: auto;  
    height: auto;  
    max-width: 100%;  
    max-height: 100%;     
}   // 等其他方法

响应式经常采用百分比布局,这个布局的缺点是元素高度无法确定

3. 动态 rem方案(手机专用)

3.1 宽度介绍
  • px:像素
  • em:一个M的宽度(或者一个汉字的宽度),相对于本身的字体大小单位,由于继承的原因父元素的字体大小可以影响打em值
  • rem:相对于根元素(Html元素)的字体大小单位
    Html根元素大小默认为16px,所以10rem=160px,用户可以更改浏览器默认根元素字体值,注意chrome浏览器默认的最小字体大小是12px
  • vh:viewport height 视口高度的1/100 100vh
  • vw:视口宽度的1/100 100vw
    100vw 是指视区宽度,即浏览器内部的可视区域大小,不包括任务栏,标题栏以及底部工具栏,等于 window.innerWidth
3.2 以宽度为基准的缩放布局(几乎完美还原设计稿)
  • 通过JS是 1rem = window.innerWidth
<script>
	document.write('<style>html{font-size:' + window.innerWidth + 'px;}<\style>')
<\script>

a、也可以使用window.innerWidth/10,注意不能除以100,因为浏览器有默认最小像素
b、当元素太小时,使用px,如border
c、对于font-size可使用16px,不使用rem不影响美观

  • 通过scss将px自动转化成rem

a、文件监听命令行: node-sass -wr scss -o css 其中scss是写代码的目录,css是输出代码目录
b、在scss中写入函数,之后使用就能自动得到相应的css

@ function px($px){
	@return $px / $designWidth *10 + rem}
$ designWidth:640    //设计稿宽度
//之后就可以愉快的书写了
body{
  p{
    font-size = px(60);
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值