css高级:flash嵌入
1,由flash创建的object/embed标签的标准集。缺点:他们与各种无效属性和元素在一起被加载,破坏文档对web标准的依从性, 因为embed是人生w3c规范没有的专有元素。
2,迂回解决方案:
1)Flash Satay方法:http://www.alistapart.com/articles/flashstay
将删除embed标签和一些object标签中不必要的专有属性。缺点:在IE/win中,在100%加载之前flash不能被启动。
该方案通过嵌入一个空的“容器”动画来欺骗IE,并用这个容器剪贴板来加载实际的内容,他的参数,高度,宽度等于真正的动画参数一致。这样,IE就能以流方式成功播放动画了,标签也得到验证,但是每个嵌入动画都需要一个容器,需要创建很多额外的垃圾目录。
以下内容为更新:
典型标记:
<object type="application/x-shockwave-flash" data="your-flash-file.swf" width="516" height="194">
<param name="movie" value="your-flash-file.swf" />
<param name="quality" value="high"/>
<img src="data:image/tower.jpg" alt="your txet" width="516" height="194"/>
</object>
object模块允许在第一个参数之后简单添加一个替换内容(若用户没有安装flash则会有一个替换内容。)。这对现代浏览器几乎都有效。
服务器端的flash satay检测:
<object type="application/x-shockwave-flash" data="your-flash-file.swf" width="516" height="194">
<!--#if expr="$(msie)"-->
classid="classid:D27CDB6E-AE6D-11cf-96B8-444553540000"
<!--#endif--> <param name="movie" value="your-flash-file.swf" />
<param name="quality" value="high"/> <img src="data:image/tower.jpg" alt="your txet" width="516" height="194"/>
</object>
2)用js编写object/embed标签
仍保留object/embed标签,只是将它们移到一个外部js文件中,用document.write把flash内容写入到文档中。
在验证软件中http://validator.w3.org 可以看到js这个有效元素,看不到其中包含的flash的object/embed代码,成功跳过了o/b标签。
examle:http://www.pag.com/pagchampionship/2004/js/flash_home.js
在xhtml中的链接:
<script type="text/javascript" src="http://www.pag.com/pagchampionship/2004/js/flash_home.js"></script>
缺点:用户禁用js;每个动画都有一个外部js,过多导致崩溃。
3)SWFObject
目前最敏捷,最健壮的嵌入方法;友好的搜索引擎。
http://blog.deconcept.com/swfobject
笔记:来自于css web设计高级教程之美国职业高尔夫联盟锦标赛网站
http://www.pga.com/pgachampionship/2004/
下拉菜单: http://alistapart.com/article/dropdowns
css高级:flash嵌入的更多相关文章
- CSS高级知识
1.CSS变换 2.CSS动画 3.CSS高级特性及兼容性:http://caniuse.com/
- CSS 高级语法 ---- 继承和选择器的分组
1. 选择器的分组 ————————————————————————— 可以对选择器进行分组,被分组的选择器享用共同的声明. h1,h2,h3,h4,h5,h6 { color: green; ...
- css高级选择器&盒模型
css高级选择器&盒模型 1.组合选择器 群组选择器 /* 每个选择器为可以为三种基础选择器的任意一个,用逗号隔开,控制多个*/ div,.div,#div{ color:red } 后代(子 ...
- CSS 高级布局技巧
随着 IE8 逐渐退出舞台,很多高级的 CSS 特性都已被浏览器原生支持,再不学下就要过时了. 用 :empty 区分空元素 兼容性:不支持 IE8 /*假如我们有以上列表:*/ <div cl ...
- 精通CSS高级Web标准解决方案(1-1选择器)
设计代码的结构 使用有意义的标记 css可以控制页面的外观并将表现与内容分隔开. 在分配ID与类名时尽量保证有意义且与表现无关. div可以对块级元素进行分组,而span可以对行内元素进行分组或标识. ...
- CSS 高级
1.CSS 盒模型(Box Model) 所有 HTML 元素都可以看作是盒子,在 CSS 中,“Box Model”这一术语主要是在布局时使用. CSS 盒模型(Box Model)规定了处理元素内 ...
- day40 css高级选择器
一.高级选择器 高级选择器分为:后代选择器.子代选择器.并集选择器.交集选择器 后代选择器 使用空格表示后代选择器.顾名思义,父元素的后代(包括儿子,孙子,重孙子) .container p{ col ...
- 精通CSS:高级WEB解决方案
选择器:高级选择器:属性选择器:[] ,例如:a[href=”#”] {};选择器的优先级:!important为最高优先级,其次优先级次序规则:a,b,c,d ,a代表行内样式,b代表ID选择器,c ...
- CSS高级特效(下)
3.混合模式与合成 在图形编辑软件(比如Photoshop)中,设计师很早就可以选择两个设计元素叠加时的颜色如何混合了. CSS Compositing and Blending标准使我们可以在CSS ...
随机推荐
- windows多线程应用编程注意事项
1,资源争用保护 对于文件操作.界面资源.GDI操作等一般由主线程完成的任务,要加以顺序化处理(serialization),即一个资源一次只能由一个线程访问,多个线程同时访问将导致错误. 方法一般可 ...
- 个人软件过程(psp)需求分析
个人软件过程(psp)需求分析 1. 引言 1.1 背景 开发项目进度计划不准确,延期经常出现,甚至无法给出一个比较准确的延迟时间,给市场推广带来很大麻烦. 2. 任务概述 2.1 目标 PSP ...
- MySQL详解(18)-----------分页方法总结
---方法1: 直接使用数据库提供的SQL语句---语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N---适应场景: 适用于数据量较少的情况(元组百/千 ...
- Android 读取asset文件
* * 从Assets中读取图片 */ private Bitmap getImageFromAssetsFile(String fileName) { Bitmap image = null; As ...
- 【译】x86程序员手册24-第7章 多任务
Chapter 7 Multitasking 多任务 To provide efficient, protected multitasking, the 80386 employs several s ...
- RocketMQ学习笔记(16)----RocketMQ搭建双主双从(异步复制)集群
1. 修改RocketMQ默认启动端口 由于只有两台机器,部署双主双从需要四个节点,所以只能修改rocketmq的默认启动端口,从官网下载rocketmq的source文件,解压后使用idea打开,全 ...
- thinkphp 5.0 “No input file specified”问题
最近在用thinkphp5.0,想要试一下强制路由模式,却发现一直报错, 在网上一通乱找,最后发现是因为不能正确识别path_info造成的, 解决方案就是在 public目录下修改 ".h ...
- 牛客多校Round 1
Solved:1 rank:249 E. Removal dp i,j表示前i个数删除了j个且选择了第i个的答案 类似字符串的dp 预处理一下nex i_k即i后面k第一次出现的位置 就好转移了 # ...
- (转载)不错的CSS写法
根据微信订阅号“设计达人”推送的文章,学到了如题知识.个人尝试了一下,感觉还不错.原文链接:http://mp.weixin.qq.com/s/g9TyBwB9xIi45TGwTBOLSQ. 字体 从 ...
- Java中对象流使用的一个注意事项
再写jsp的实验作业的时候,需要用到java中对象流,但是碰到了之前没有遇到过的情况,改bug改到崩溃!!记录下来供大家分享 如果要用对象流去读取一个文件,一定要先判断这个文件的内容是否为空,如果为空 ...