怎么用css实现花瓣掉落到底部指定的位置,像真的花瓣掉落一样,不在循环向上

html-css030

怎么用css实现花瓣掉落到底部指定的位置,像真的花瓣掉落一样,不在循环向上,第1张

固定顶部悬浮菜单效果我们现在在各种网站都能看到这种效果就是我们移到指定位置之后就会显示出导航菜单了,下面我们就一起来看看吧.

花瓣网以前的菜单效果还不错,首先是展示出全部的菜单,然后当你向下滑动网页的时候,菜单自动吸顶固定悬浮在浏览器的顶部,这个用户也能很好的切换不同的分类,查看更多的内容,而对于网站来说,也提升了不少的用户体验和交互性。

打开花瓣网右键网页另存为,存到本地后用专业编辑器打开看下就知道了,也可以用浏览器开发者工具,直接查看源代码。当然有些内容是JS动态生成的,牵扯的知识面就广了,先从简单的HTML+css开始着手。

把这段加到你网页里面就可以了,不是CSS,是Javascript

花瓣变叉叉是因为下面语句中的图片地址失效或者你的电脑没有连接上网络

STAR[0] = "http://blog.com.cn/skin/lixia/236605054.gif"

.....

<SCRIPT language=JavaScript1.2>

<!-- Begin

//<!-- Original: Altan (snow@altan.hr) -->

//<!-- Web Site: http://www.altan.hr/snow -->

// Script arranged by Hisa (http://www.suisen.sakura.ne.jp/~ikitai/js/)

var no = 13// STAR number?@?P¡ë?¨C¨º?¨¦?o?¨¦¡ë?¡®??¨¬¨C??¡±

var speed = 10// smaller number moves the STAR faster

STAR = new Array()

STAR[0] = "http://blog.com.cn/skin/lixia/236605054.gif"

STAR[1] = "http://blog.com.cn/skin/lixia/236596767.gif"

STAR[2] = "http://blog.com.cn/skin/lixia/236597338.gif"

STAR[3] = "http://blog.com.cn/skin/lixia/236598420.gif"

STAR[4] = "http://blog.com.cn/skin/lixia/236599138.gif"

STAR[5] = "http://blog.com.cn/skin/lixia/236600240.gif"

var ns4up = (document.layers) ? 1 : 0 // browser sniffer

var ie4up = (document.all) ? 1 : 0

var dx, xp, yp // coordinate and position variables

var am, stx, sty // amplitude and step variables

var i, doc_width = 1500, doc_height = 1800

if (ns4up) {

doc_width = self.innerWidth

doc_height = self.innerHeight

} else if (ie4up) {

doc_width = document.body.clientWidth

doc_height = document.body.clientHeight

}

dx = new Array()

xp = new Array()

yp = new Array()

am = new Array()

stx = new Array()

sty = new Array()

j = 0

for (i = 0i <no++ i) {

dx[i] = 0 // set coordinate variables

xp[i] = Math.random()*(doc_width-50) // set position variables

yp[i] = Math.random()*doc_height

am[i] = Math.random()*20// set amplitude variables

stx[i] = 0.02 + Math.random()/10// set step variables

sty[i] = 0.7 + Math.random()// set step variables

if (ns4up) { // set layers

if (i == 0) {

document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src=\"" + STAR[j] + "\" border=\"0\"></layer>")

} else {

document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src=\"" + STAR[j] + "\" border=\"0\"></layer>")

}

} else if (ie4up) {

if (i == 0) {

document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absoluteZ-INDEX: "+ i +" VISIBILITY: visibleTOP: 15pxLEFT: 15pxwidth:1\"><img src=\"" + STAR[j] + "\" border=\"0\"></div>")

} else {

document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absoluteZ-INDEX: "+ i +" VISIBILITY: visibleTOP: 15pxLEFT: 15pxwidth:1\"><img src=\"" + STAR[j] + "\" border=\"0\"></div>")

}

}

if (j == (STAR.length-1)) { j = 0} else { j += 1}

}

function STAR_NS() { // Netscape main animation function

for (i = 0i <no++ i) { // iterate for every dot

yp[i] += sty[i]

if (yp[i] >doc_height-50) {

xp[i] = Math.random()*(doc_width-am[i]-30)

yp[i] = 0

stx[i] = 0.02 + Math.random()/10

sty[i] = 0.7 + Math.random()

doc_width = self.innerWidth

doc_height = self.innerHeight

}

dx[i] += stx[i]

document.layers["dot"+i].top = yp[i]

document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i])

}

setTimeout("STAR_NS()", speed)

}

function STAR_IE() { // IE main animation function

for (i = 0i <no++ i) { // iterate for every dot

yp[i] += sty[i]

if (yp[i] >doc_height-50) {

xp[i] = Math.random()*(doc_width-am[i]-30)

yp[i] = 0

stx[i] = 0.02 + Math.random()/10

sty[i] = 0.7 + Math.random()

doc_width = document.body.clientWidth

doc_height = document.body.clientHeight

}

dx[i] += stx[i]

document.all["dot"+i].style.pixelTop = yp[i]

document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i])

}

setTimeout("STAR_IE()", speed)

}

if (ns4up) {

STAR_NS()

} else if (ie4up) {

STAR_IE()

}

// End -->

</SCRIPT>