如何用JS控制网页字体大小,使其能够自适应屏幕大小

JavaScript016

如何用JS控制网页字体大小,使其能够自适应屏幕大小,第1张

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设置html标签的字体大小:

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'

}

}

}

}

如果你在html中定义了字体大小的话可以获取。通过document.getElementById('id').style.fontSize获取利用jquery $('id').css('fontSize')但是如果在html中没有定义字体大小的话没法获取。