CSS3里面的线性渐变:linear-gradient
1、语法
2、参数
第一个参数:指定渐变方向,可以用“角度”的关键词或“英文”来表示:
第一个参数省略时,默认为“180deg”,等同于“to bottom”。
第二个和第三个参数,表示颜色的起始点和结束点,可以有多个颜色值。
例如:
background-image:linear-gradient(to left, red,orange,yellow,green,blue,indigo,violet)
该属性已经得到了 IE10+、Firefox19.0+、Chrome26.0+ 和 Opera12.1+等浏览器的支持。
CSS提供了一种绘制渐变图的机制,这个渐变的机制可以接受任何图片的属性联合使用,包括background-image,我们可以尝试使用一个渐变背景:
有些旧版本的WebKit浏览器只支持线性渐变
使用到的linear-gradient()函数,可以假设一条线,从元素顶部到底部绘制了一个渐变背景,这条线的角度由这个函数的前面关键字(to,bottom),位置由0%处的颜色是浅灰色,而位置100%处也就是元素顶部的颜色是深蓝色。
渐变线的方向可以使用关键字to,再加上一个表示边的(top、right、bottom、left)或者使用角来表示(top left、top right、bottom left、bottom right)的关键字来指定。
此外还可以使用deg单位指定渐变线的角度,0deg表示垂直向上,增大角度值就意味着沿顺时针方向旋转,直到360deg,度数表示绘制渐变的方向,因此起点就在我们指定的相反方向。
当设置为45deg的渐变:
线性渐变的默认方向是自上而下的,而且0%和100%分别表示第一个和最后一个色标的位置,因此,可以简写为:
新增色标若未指定位置,则在0%~100%范围内取均值,比如:有3个未指定位置的色标,那么它们的位置分布为0%、50%、100%
除了百分比外,还可以使用绝对值指定色标的位置,比如:
这种写法渐变是顶部从浅蓝色开始渐变,往下走100px之后过渡到深蓝色,然后一直到底部都是深蓝色。
方法:根据浏览者的分辨率自动调用样式表1、新建两个样式表分别命名为:1024.css 800.css(当然有更多分辨率,可以增加样式表)
2、在样式表中分别定义好图片作为网页背景。
3、新建一个网页文件,把下面代码复制过去。
<script language="JavaScript">
<!--
function test(){
var a=screen.width+".css"
//alert(a)
//测试变量a的值
document.getElementById("eric").href =a
}
//-->
</script>
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
<link href="" rel="stylesheet" type="text/css" id="eric">
</head>
<body onLoad="test()">
</body>
</html>
搞定!