工作需要,要做一个手机自适应的网页效果,终于搞定,先分享并记录!
其实主要就是改掉HTML页面声明:
在网页中加入以下代码,就可以正常显示了:
解释:
width - viewport的宽度
height - viewport的高度
initial-scale - 初始的缩放比例
minimum-scale - 允许用户缩放到的最小比例
maximum-scale - 允许用户缩放到的最大比例
user-scalable - 用户是否可以手动缩放
精简点的话,可以把上面的代码更改为以下代码,效果是一样的:
最后就是不要设置太大的具体宽度属性了,比如你在网页把Body的宽度属性设为1000px,这肯定是不行的了,但是可以设置为90% 或者 auto,这是屏幕自适应的。
-----------------------------------补充:我是快乐的分割线 ---------------------------------------------------
相对大小的字体
字体也最好不要使用绝对大小(px),而是使用相对大小(em)。
上面的代码指定,字体大小是页面默认大小的100%,即16像素。
然后,h1的大小是默认大小的1.5倍,即24像素(24/16=1.5)。
small元素的大小是默认大小的0.875倍,即14像素(14/16=0.875)。
流动布局(fluid grid)
另外,绝对定位(position: absolute)的使用,也要非常小心。
选择加载CSS
它的意思就是,自动探测屏幕宽度,然后加载相应的CSS文件。
上面的代码意思是,如果屏幕宽度小于400像素(max-device-width: 400px),就加载tinyScreen.css文件。
如果屏幕宽度在400像素到600像素之间,则加载smallScreen.css文件。
除了用html标签加载CSS文件,还可以在现有CSS文件中加载。
CSS的@media规则
同一个CSS文件中,也可以根据不同的屏幕分辨率,选择应用不同的CSS规则。
上面的代码意思是,如果屏幕宽度小于400像素,则column块取消浮动(float:none)、宽度自动调节(width:auto),sidebar块不显示(display:none)。
图片的自适应(fluid image)
这只要一行CSS代码:
这行代码对于大多数嵌入网页的视频也有效,所以可以写成:
老版本的IE不支持max-width,所以只好写成:
本文转自叶超Luka博客园博客,原文链接:http://www.cnblogs.com/yc-755909659/p/3605214.html,如需转载请自行联系原作者