1、html页面代码:
<!DOCTYPE html ">
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />
<title>JS 控制网页字体放大缩小实例</title>
</head>
<body>
<input onclick="setFontsize(0,'Content')" type="button" value="缩小字体">
<input onclick="setFontsize(1,'Content')" type="button" value="放大字体"><DIV ID="Content">
这是一个测试字体大小的页面
</DIV>
</body>
</html>
2、js代码:
var initial_fontsize= 10//初始化大小
var initial_lineheight = 18//初始化行高
设置字体的方法:
function setFontsize(type,objname){
var whichEl = document.getElementById(objname)
if (whichEl!=null) {
if (type==1){
if(initial_fontsize<64){
whichEl.style.fontSize=(++initial_fontsize)+'pt'
whichEl.style.lineHeight=(++initial_lineheight)+'pt'
}
}else {
if(initial_fontsize>8){
whichEl.style.fontSize=(--initial_fontsize)+'pt'
whichEl.style.lineHeight=(--initial_lineheight)+'pt'
}
}
}
}
1.首先,在网页代码的头部,加入一行viewport元标签。viewport是网页默认的宽度和高度,上面这行代码的意思是,网页宽度默认等于屏幕宽度(width=device-width),原始缩放比例(initial-scale=1)为1.0,即网页初始大小占屏幕面积的100%。
所有主流浏览器都支持这个设置,包括IE9,对于那些老式浏览器(主要是IE6、7、8),需要使用css3-mediaqueries.js。
2、不使用绝对宽度由于网页会根据屏幕宽度调整布局,所以不能使用绝对宽度的布局,也不能使用具有绝对宽度的元素。这一条非常重要。具体说,CSS代码不能指定像素宽度:width:xxx px
只能指定百分比宽度:width: xx%或者width:auto
3、相对大小的字体
字体也不能使用绝对大小(px),而只能使用相对大小(em)。
body {
font: normal 100% Helvetica, Arial, sans-serif
}
上面的代码指定,字体大小是页面默认大小的100%,即16像素。
h1 {
font-size: 1.5em
}
然后,h1的大小是默认大小的1.5倍,即24像素(24/16=1.5)。
small {
font-size: 0.875em
}
small元素的大小是默认大小的0.875倍,即14像素(14/16=0.875)。
通过js动态获取屏幕的宽度(document.clientWidth)然后根据屏幕宽度动态计算出rem的实际值。
假设,640px的设备 1rem = 100px
公式: rem = document.clientWidth / 640 * 100px
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)