• 《移动Web前端高效开发实战》笔记1——静态布局在移动端上的自适应


    1.整体缩放

    整体缩放可以用在营销活动页,营销活动可能因为设计美观需求必须使用背景图片而非背景色,因此需要考虑背景图适应屏幕大小。开发者可以用320像素的宽度作为基础宽度(高度可以固定),然后通过计算实际文档宽度来进行相应缩放。

    使用整体缩放布局开发的项目在加载过程中需要监听resize事件,代码如下:

    window.addEventListener(‘resize’,document.body.clientWidth / 320);
    

    除此之外,开发者需要在缩放的节点上添加transform-origin属性保证缩放是从原点开始,如果非原点缩放会导致页面不能完全显示,CSS代码如下:

    .wrap {
    	 320px;
    	transform-origin: 0 0
    }
    

    2.媒体查询

    另一种方法是使用背景色整体填充,主体使用不同的媒体查询进行大小优化,开发者需要对主流的屏幕分辨率进行设定,本实例因为要处理图标到背景图的精确定位,所以并不适合使用媒体查询,媒体查询更加适合一些展示型页面,本实例仅对外层做修改,假设拥有一个绿色背景,代码如下:

    
    

    媒体查询会使代码量大幅增加,在实际开发中,开发者需要注意两点,一是将不需要根据屏幕变化的属性放到媒体查询外设置,减少代码冗余,二是设置好需要的媒体查询断点。

    .wrap { background-color: green; }					/* 设定外层背景色 */
    .main-bg {
    	background: url(../images/main.jpg) no-repeat;		/* 背景图片 */
    	background-size: 100%;						/* 背景图片撑满容器 */
    }
    @media (max- 320px) {						/* 适配320px宽度以下屏幕 */
    	. main-bg {
    		 320px;
    		height: 470px;
    	}
    }
    @media (min- 321px) and (max- 639px) {	/* 适配320px到640px宽度屏幕 */
    	. main-bg {
    		 480px;							/* 采用480px适配改区间 */
    		height: 705px;							/* 调整高度放置图片拉伸 */
    	}
    }
    @media (min- 640px) {						/* 适配640px以上宽度屏幕 */
    	. main-bg {
    		 640px;
    		height: 940px;
    	}
    }
    

      

    更多信息关注:

  • 相关阅读:
    将centos_yum源更换为阿里云(官方文档)
    JIRA 破解文件研究(Win 7环境)
    告别拖延症,你也可以轻松做到
    VS2015 + EF6连接MYSQL
    start-stop-daemon
    stm32开发板无法正常写入的问题或者写入后无法正常运行的问题
    进制转换
    回文判断程序
    C语言结构体指针的引用问题
    升级/安装主题插件提示权限不足 输入FTP解决办法
  • 原文地址:https://www.cnblogs.com/book2006/p/7599334.html
Copyright © 2020-2023  润新知