作 者:笑傲江湖分 类: 百 宝 箱 发布于:2012年-3月-10日 19:54 星期六
作 者:笑傲江湖分 类: 百 宝 箱 发布于:2011年-10月-10日 13:02 星期一
原本博客顶部的通栏展示是一张图片,后来做了一个简单的Flash动画放上。放上之后发现一个小问题,就是博文中的缩略图点击之后,会全屏显示原始大图片,不过,全屏时,Flash动画居然显示在最上层,也就是覆盖在原始大图片之上了。本想是给Flash动画加个z-index的负值之后就应该不覆盖原始大图了,结果依旧,没搞定。
先介绍一下z-index,CSS的这个属性值,是用来设置元素堆叠顺序的,也就是垂直于屏幕方向上的排列顺序,类似于PS里层的概念,值越大的元素,会覆盖其下面的元素。z-index可以拥有负值,且仅能在定位元素上有效,比如position:absolute,position:relative,or position:fixed。默认值是auto,主流的浏览器都支持这个属性。也有列外,IE7及老版本不支持inherit,IE8需要!DOCTYPE,IE9还算厚道,能支持inherit了。
根据这个z-index的说法来看,Flash动画应该是不覆盖其他元素了,可是不行哦,于是Google之,得知仅有z-index还不够哦,还得给Flash动画加上两个参数,代码如下:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="1088" height="100" style="z-index:-99"> <param name="movie" value="/images/top_show.swf" /> <param name="quality" value="high" /> <param name="wmode" value="transparent" /> <embed src="/images/top_show.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" width="1088" height="100"></embed> </object>其中第四行及第五行中的wmode="transparent"就是需要添加的参数,这样就搞定了,Flash动画老老实实的显示在原始大图下面了。
作 者:笑傲江湖分 类: 百 宝 箱 发布于:2011年-6月-29日 10:15 星期三
http://swiffy.googlelabs.com/
Swiffy可以把Flash动画文件,也就是SWF格式转换成HTML5,可以让你把Flash动画内容从新使用在一些没有Flash Player的设备上,比如iPhone、iPads等。
Swiiffy目前只能支持到SWF8.0和ActionScript2.0的动画,转换后的HTML5格式的文件,可以很好的在基于Webkit的浏览器上浏览和使用,比如Chrome、Mobile Safari。SWF5版本的Flash动画文件,转换后的结果会更好,所以,如果可能的话,将您的Flash动画在生成时,选择Flash5的版本导出。版本过高的话,转换后会有很多Flash的高级属性无法支持。
看来Google还得继续努力哦,毕竟Flash已经使用了这么多年,HTML5也是新手上路,所以这种转换本身应该只是一种过渡,也或者是暂时的折中方法。HTML5随着其标准制定的完成,终将成为新一代网页的标准,到那时,估计也就不需要把Flash转换成HTML5了,普及后的HTML5是可以取代Flash的,拭目以待吧。
看看下面转换前后的效果,左边是Flash,右边是HTML5,如果您的浏览器版本比较老,比如IE6、IE7、IE8,那就看不了的,Firefox、Opera、Chrome、Safari是没有问题的。