css设置opacity

之前看了别人写了一段关于opacity的css代码,没深入理解就copy过来自己用了一段时间,现在重新拿出来又深入研究了一下。

.cla{
/* IE 8 */
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; /* IE 5-7 */
filter: alpha(opacity=50); /* Netscape */
-moz-opacity:; /* Safari 1.x */
-khtml-opacity:; /* Good browsers */
opacity:;
}

我们知道opacity在IE9+中是完全支持的。

opacity IE6 IE7 IE8 IE9 IE10
NO NO NO YES YES
/* IE 8 */
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";

这行代码是为了解决IE8滤镜的问题,这行代码经过测试仅在IE8,和IE9中起作用

-ms-filter
IE6 IE7 IE8 IE9 IE10
NO NO YES YES NO

参考IE官网资料,可以看到Alpha Filter在IE9之后的版本就不在支持了,语法如下:

HTML
<ELEMENT STYLE=
"filter:progid:DXImageTransform.Microsoft.Alpha(sProperties)"
 ... >
Internet Explorer 5.5 or later
Scripting
object .style.filter =
"progid:DXImageTransform.Microsoft.Alpha(sProperties)"
Internet Explorer 5.5 or later

filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50);在IE浏览器版本支持情况如下:

filter IE6 IE7 IE8 IE9 IE10
YES YES YES YES NO

所以为了支持IE8及IE8之前的版本不支持opacity的问题,可以这样写:

.cla{
/* IE 5-8 */
filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; /* Good browsers */
opacity:;
}
接下来我们来看filter: alpha(opacity=50);
filter: alpha(opacity=50);在IE浏览器支持情况如下:
filter IE6 IE7 IE8 IE9 IE10
YES YES YES YES NO

可以看到,filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";和filter: alpha(opacity=50);在IE浏览器中支持情况是一样的。但是filter: alpha(opacity=50);这种语法我没有查到相关资料。
所以为了支持IE8及IE8之前的版本不支持opacity的问题,也可以这样写:

.cla{
/* IE 5-8 */
filter: alpha(opacity=50); /* Good browsers */
opacity:;
}

接下来我们来看看怎么用JavaScript改变opacity的值:

var opacityValue = 0.5; // 值为0.5
myElement.style.opacity = opacityValue ; //Good browsers myElement.style.filter = "alpha(opacity=" + opacityValue*100 + ")"; // IE5-8 //下面这些情况可以不用考虑
myElement.style.MozOpacity = opacityValue ;
myElement.style.opacity = opacityValue ;
myElement.style.KhtmlOpacity = opacityValue ;

opacity--css + javascript兼容性代码的更多相关文章

  1. div+css通用兼容性代码整理

    一.Div+css通用兼容性代码 你可以在css开头加入 *html{padding:0px} <style> *html{padding:0px} /* Clear Fix */ .cl ...

  2. html/css/javascript练习代码

    这两天心血来潮学习了前端,自己也做了个小小的网页,不好看QAQ 不过网页上集结了很多零碎的知识,在这里先马克一下.图片地址:https://github.com/lesroad/html-css-js ...

  3. html+css+javascript实现列表循环滚动示例代码

    使用html+css+javascript实现列表循环滚动,设置时间定时,在规定的时间内替换前一个节点的内容,具体示例如下,感兴趣的朋友可以参考下 说明:设置时间定时,在规定的时间内替换前一个节点的内 ...

  4. Brackets - 强大免费的开源跨平台Web前端开发工具IDE (HTML/CSS/Javascript代码编辑器)

    Brackets 是一个免费.开源且跨平台的 HTML/CSS/JavaScript 前端 WEB 集成开发环境 (IDE工具).该项目由 Adobe 创建和维护,根据MIT许可证发布,支持 Wind ...

  5. [转载]Brackets - 强大免费的开源跨平台Web前端开发工具IDE (HTML/CSS/Javascript代码编辑器)

    http://brackets.io/ Brackets 是一个免费.开源且跨平台的 HTML/CSS/JavaScript 前端 WEB 集成开发环境 (IDE工具).该项目由 Adobe 创建和维 ...

  6. IE和Firefox的Javascript兼容性总结

    长久以来JavaScript兼容性一直是Web开发者的一个主要问题.在正式规范.事实标准以及各种实现之间的存在的差异让许多开发者日夜煎熬.为此,主要从以下几方面差异总结IE和Firefox的Javas ...

  7. 【总结】IE和Firefox的Javascript兼容性总结(转)

    文章转自:http://www.cnblogs.com/wiky/archive/2010/01/09/IE-and-Firefox-Javascript-compatibility.html 长久以 ...

  8. [ 兼容 ] IE和Firefox的Javascript兼容性总结

    长久以来JavaScript兼容性一直是Web开发者的一个主要问题.在正式规范.事实标准以及各种实现之间的存在的差异让许多开发者日夜煎熬.为此,主要从以下几方面差异总结IE和Firefox的Javas ...

  9. 记录下项目中常用到的JavaScript/JQuery代码二(大量实例)

    记录下项目中常用到的JavaScript/JQuery代码一(大量实例) 1.input输入框监听变化 <input type="text" style="widt ...

随机推荐

  1. LookAround开元之旅(持续更新中...)

    应用介绍随便瞧瞧是一款为android用户量身定做的免费图文资讯软件集美食,文学,语录等频道于一体界面简洁,操作流畅,图文分享,个性收藏是广大卓粉的必备神器APK下载 -->https://ra ...

  2. shell框架

    #!/bin/bash#注释#注释#环境变量相关,如下PATH=/sbin:/bin:/usr/bin:/usr/sbin #引入库函数,如下,类似于c语言的#include "*.h&qu ...

  3. MySQL常用命令和语句

    1.常用SQL语句 1)常用函数/*type可取值为:MICROSECONDSECONDMINUTEHOURDAYWEEKMONTHQUARTERYEARSECOND_MICROSECONDMINUT ...

  4. PostgreSQL 的日期函数用法举例

    最近偶有开发同事咨询 PostgreSQL 日期函数,对日期处理不太熟悉,今天详细看了下手册的日期函数,整理如下,供参考. 一 取当前日期的函数 --取当前时间skytf=> select no ...

  5. SQL中的IF ELSE(CASE语句的使用)

    大家对IF ELSE语句可能都很熟悉,它是用来对过程进行控制的.在SQL的世界中CASE语句语句有类似的效果.下面简单的介绍CASE语句的用法.考虑下面的情况,假设有个user表,定义如下: CREA ...

  6. Mysql的Root密码忘记,查看或修改的解决方法

    Mysql的Root密码忘记,查看或修改的解决方法:1.首先启动命令行2.在命令行运行:taskkill /f /im mysqld-nt.exe3.继续在命令行运行:mysqld-nt --skip ...

  7. 新建maven的pom.xml第一行出错的解决思路

    前言:博主在想要用maven创建项目的时候,忘记之前已经安装过maven了,所以再安装了另一个版本的maven,导致在pom.xml的第一行总是显示某一个jar的zip文件读取不出来. 在网上找了很多 ...

  8. java 核心技术卷一笔记 6 .2.3 接口 lambda 表达式 内部类

    6.2.3   对象克隆 Cloneable 接口,这个接口指示一个类提供了一个安全的clone方法.(稍作了解) 为一个对象引用的变量建立副本时,原变量和副本都是同一个对象的引用,任何一个变量改变都 ...

  9. iterator与iterable

    用Iterator模式实现遍历集合Iterator模式是用于遍历集合类的标准访问方法.它可以把访问逻辑从不同类型的集合类中抽象出来,从而避免向客户端暴露集合的内部结构.例如,如果没有使用Iterato ...

  10. H5新特性:

    新增选择器 document.querySelector.document.querySelectorAll 拖拽释放(Drag and drop) API 媒体播放的 video 和 audio 本 ...