flash和html里实现全屏和自适应屏方法如下:
一、消除任意缩放浏览器窗口对网页的影响
一番辛苦做出来的网页,在全屏状态下浏览一切正常。但在改变浏览窗口大小之后,网页就变得"不堪入目"了,这是个很值得注意的问题。
问题的根源还得从网页的布局说起,在DW中,网页内容的定位一般是通过表格来实现的,解决表格的问题也就成功了大半。
大家应该注意到,在DW中表格属性面板的高宽设定选择上提供了两种不同类型:百分比和像素值。百分比的使用将会产生前面说到的那个毛病。这里所说的百分比是指表格的高或宽设置为上层标记所占区域高或宽的百分比,如在一个表格单元的宽度是600,在它里面嵌入了另外一个表格,表格宽度占表格单元的50%,则这个表格的宽度为300,依此类推,如果在一个表格不是嵌于另一个表格单元中,则其百分比是相对于当时窗口的宽度的。IE浏览器中,随便改动主页窗口的大小时,表格的内容也随之错位、变形,就是因为表格的百分比也要随着窗口的大小而改变成相应的百分比宽度。
自然,解决这个问题的办法就是将表格宽度设置成固定宽度(也就是像素值)。另外如果外层表格已做好固定宽度设置,内层表格也可以适当使用百分比设置。清楚这个原则以后,如果出现类似的问题大家也知道怎么解决。
二、让网页居中
说到了窗口大小就会顺着路子想到分辨率的问题,在800×600分辨率下制作的网页在1024×768分辨率的机器上打开,整个网页就会跑到左边;1024×768分辨率的网页在800×600分辨率的机器上有时也会变得"不堪入目"。两种分辨率各做一个吧?做起来费时,看起来也费劲。怎么办呢?
现在大多数网民都还在用800*600的分辨率,所以一般可以以此分辨率为主,要想让网页在1024*768时居中,只要在网页原代码的<body>后紧加一句<center>,</body>前加一句</center>就OK了。不过有几个问题这是要注意一下,第一个就是上面说到的百分比的问题,表格、单元格的宽度单位最好要使用像素单位,而不要用百分比。例如width=770。如果表格宽度设的是百分比,那么使用大于800×600的像素时,网页就会拉宽,这样网页可能会变形。在<body>中加入leftmargin=0,即<body leftmargin=0>这种情况下,800×600支持的表格宽度为780像素时不会出现滚动条。还有一点要注意的是不能用DW中的层来定位。
<html>
<head></head>
<body topmargin=0 leftmargin=0>
<center>
<table cellspacing cellpadding width=760><tr><td></td></tr></table></center>
</body>
</html>
三、定义固定大小的文字
大家都知道,在IE浏览器的功能设置中,有一个可以自由设置窗口内容字体大小的功能,这样由于不同访问者的设置习惯不同,呈现在面前的网页有时也会不不相同。比如可能本来设计时用的是2号字体,结果由于用户对浏览器的额外设定,变的更大了,这时网页也可能变得"不堪入目"。
如果使用了网页中的CSS样式表技术,就不会出现上述情况了。使用快捷键"Shift+F11"打开样式表"CSS style"编辑器,在窗口中单击鼠标右键执行"New CSS style..."命令新建一个样式表,然后在给出的列表中选择"类型"选项,定义文字属性参数(一般文字的大小选择12px较为适宜)。完成后选择网页编辑窗中的文本,单击新的样式表名称,可以看到选中的文本发生了变化。预览时试试定义的文本字体尺寸还会不会随浏览器的选择字体大小而改变。
四、让网页适应不同的浏览器
浏览器的格局现在是两分天下,一分是IE,另一分是NetScape,在国内Ie有绝对的占有率,在这种情况下设计的网页只要兼容它就行了,但NetScape在国外还是有很多人使用,毕竟它是浏览器的元老。
虽然没有办法做出让所有浏览器都兼容的网站,但只要注意以下几点,做出来的网页在各个浏览器都中能达到比较好的显示效果:
不要混合使用层和表格排版,如果是父子关系,如层中表格,不在此原则范围内。
内联式的 CSS 在 Netscape Navigator 中经常会出现问题,使用链式或内嵌式。
有时需要在空层插入表格或者透明图片,以保证在 Netscape Navigator 里的效果。
对于只有几个像素宽度或高度的层,改用图片来实现。
避免使用 W3C 组织不推荐的排版属性,用 CSS 代替。
一、不用浏览器直接用Flash播放器播放: A.不显示Flash播放器菜单栏的全屏(类似屏保效果),在第一帧处的Actions用FS Command命令,在For standalone player选项中选择fullscreen,这时就会看到arguments中为true,Command中是fullscreen。运行中可按ESC 退出或设一按钮在Actions上,用FS command在For standalone player选项中选择quit也可退出。附带说一句:For standalone player上的所有选项只适合于用Flash播放器播放的情况。在浏览Flash动画时,如果按CTRL+F键,可实现全屏与非全屏的切换。 B.如果仅是要使swf文件占满Flash播放器的窗口,什么也不需要做。直接击swf文件。 以上一类全屏多用在非互联网环境的运行。 二、在非Flash播放器(如IE)中运行: A.只占满浏览器:这种情况相对简单,不管你制作的Flash大小是否为800×600,只要在调用swf文件的HTML中将WIDTH和 HEIGHT的参数设为100%即可,当然也可以在Flash导出HTML文件的设置中进行设置,方法是:打开File菜单;选Publish Settingsd出导出设置对话框;在HTML标签下的Dimensions选项,下拉后选中Percent(百分比),并在WIDTH和HEIGHT 框中填100,运行这个与swf同名的HTML文件则与直接加语句效果相同。这种占满浏览器的全屏与swf文件的设置无关,但最好设置的大小在700× 400左右,否则容易导致图像(主要是在Flash中调用的位图)、汉字的失真。 B.不显示浏览器菜单栏、工具栏的全屏。这种全屏稍稍复杂,与Flash的设置无关,但要借助JavaScript来完成。方法是:在HTML文件中的与之间加入以下代码 也可以在swf文件的第一帧Actions上的URL命令上加上 javascript:window.open(″*.swf″,″″,″fullscreen=1,menubar=no,width=800,height=600″) 这种全屏类似屏保,用ALT+F4或设置按钮退出。把fullscreen设为=0,则是显示浏览器菜单栏、工具栏的全屏。(注:*.swf是你所要显示的Flash动画的文件名) 好了,关于全屏的方法就是如此,你根据自己的需要试试看(以上各例均在IE5.0中通过)。stage.displayState="fullScreen"//这样写就是全屏。
stage.displayState="normal"
//这样写就是退出全屏。
若要启用全屏模式,请将 allowFullScreen 参数添加到包含 SWF 文件的 HTML 页中的 object 和 embed 标签,同时将 allowFullScreen 设置为 "true",如下例所示: <param name="allowFullScreen" value="true" />
...
<embed src="example.swf" allowFullScreen="true" ... >
HTML 页还可以使用脚本生成 SWF 嵌入标签。 您需要修改脚本,以使其插入正确的 allowFullScreen 设置。 Flash 和 Flex Builder 生成的 HTML 页使用 AC_FL_RunContent() 函数嵌入对 SWF 文件的引用,并且您需要添加 allowFullScreen 参数设置,如下所示:
AC_FL_RunContent( ... "allowFullScreen", "true", ... )
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)