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嵌入的更多相关文章

  1. CSS高级知识

    1.CSS变换 2.CSS动画 3.CSS高级特性及兼容性:http://caniuse.com/

  2. CSS 高级语法 ---- 继承和选择器的分组

    1. 选择器的分组 —————————————————————————   可以对选择器进行分组,被分组的选择器享用共同的声明.   h1,h2,h3,h4,h5,h6 { color: green; ...

  3. css高级选择器&盒模型

    css高级选择器&盒模型 1.组合选择器 群组选择器 /* 每个选择器为可以为三种基础选择器的任意一个,用逗号隔开,控制多个*/ div,.div,#div{ color:red } 后代(子 ...

  4. CSS 高级布局技巧

    随着 IE8 逐渐退出舞台,很多高级的 CSS 特性都已被浏览器原生支持,再不学下就要过时了. 用 :empty 区分空元素 兼容性:不支持 IE8 /*假如我们有以上列表:*/ <div cl ...

  5. 精通CSS高级Web标准解决方案(1-1选择器)

    设计代码的结构 使用有意义的标记 css可以控制页面的外观并将表现与内容分隔开. 在分配ID与类名时尽量保证有意义且与表现无关. div可以对块级元素进行分组,而span可以对行内元素进行分组或标识. ...

  6. CSS 高级

    1.CSS 盒模型(Box Model) 所有 HTML 元素都可以看作是盒子,在 CSS 中,“Box Model”这一术语主要是在布局时使用. CSS 盒模型(Box Model)规定了处理元素内 ...

  7. day40 css高级选择器

    一.高级选择器 高级选择器分为:后代选择器.子代选择器.并集选择器.交集选择器 后代选择器 使用空格表示后代选择器.顾名思义,父元素的后代(包括儿子,孙子,重孙子) .container p{ col ...

  8. 精通CSS:高级WEB解决方案

    选择器:高级选择器:属性选择器:[] ,例如:a[href=”#”] {};选择器的优先级:!important为最高优先级,其次优先级次序规则:a,b,c,d ,a代表行内样式,b代表ID选择器,c ...

  9. CSS高级特效(下)

    3.混合模式与合成 在图形编辑软件(比如Photoshop)中,设计师很早就可以选择两个设计元素叠加时的颜色如何混合了. CSS Compositing and Blending标准使我们可以在CSS ...

随机推荐

  1. 左耳听风 ARTS Week 002

    要求:1.每周至少做一个 leetcode 的算法题 2.阅读并点评至少一篇英文技术文章 3.学习至少一个技术技巧 4.分享一篇有观点和思考的技术文章 1.每周至少做一个 leetcode 的算法题 ...

  2. Spartan6系列之芯片配置模式详解

    1.   配置概述 Spartan6系列FPGA通过把应用程序数据导入芯片内部存储器完成芯片的配置.Spart-6 FPGA可以自己从外部非易失性存储器导入编程数据,或者通过外界的微处理器.DSP等对 ...

  3. Learning Face Age Progression: A Pyramid Architecture of GANs

    前言 作为IP模式识别的CNN初始模型是作为单纯判别式-模式识别存在的,并以此为基本模型扩展到各个方向.基本功能为图像判别模型,此后基于Loc+CNN的检测模型-分离式.end2end.以及MaskC ...

  4. 【转】Go语言入门教程(一)Linux下安装Go

    说明 系统是Ubuntu. 关于安装 下载安装包 当前官方下载地址是https://golang.org/dl/,如果不能访问,请自行FQ,FQ是技术工作者的必备技能. 安装 tar -xzvf go ...

  5. Spring 中无处不在的 Properties

    转自:https://javadoop.com/post/spring-properties?hmsr=toutiao.io&utm_medium=toutiao.io&utm_sou ...

  6. php第二十三节课

    XML XML:页面之间传递数据,跨平台传递 HTML:超文本标记语言,核心标签 XML特点:1.标签名可以自己定义2.有且只有一个根3.大小写敏感4.标签必须完整 <!DOCTYPE html ...

  7. 洛谷——P3373 【模板】线段树 2&& B 数据结构

    P3373 [模板]线段树 2 题目描述 如题,已知一个数列,你需要进行下面三种操作: 1.将某区间每一个数乘上x 2.将某区间每一个数加上x 3.求出某区间每一个数的和 线段树维护区间乘法 1.如何 ...

  8. 利用CMD 創建新文件的機種方法

    用 CMD 創建新文件 説明一下: 是在Windows的 CMD命令行模式下,或者在PowerShell命令行模式下創建新文件的機種方法. 創建空文件 cd.>a.txt cd.表示改变当前目录 ...

  9. UVA - 1374 Power Calculus (dfs迭代加深搜索)

    题目: 输入正整数n(1≤n≤1000),问最少需要几次乘除法可以从x得到xn ?在计算过程中x的指数应当总是正整数. 思路: dfs枚举次数深搜 注意: 1.指数如果小于0,就退出当前的搜索 2.n ...

  10. Intellij idea 生成for循环代码块

    itar 生成array for代码块 for (int i = 0; i < array.length; i++) { = array[i]; } itco 生成Collection迭代 fo ...