计算IE的旋转角度与滤镜详解(计算ie的旋转角度与滤镜详解的关系)
zhezhongyun 2025-03-14 22:25 79 浏览
在IE中使用CSS3的旋转效果是不能实现的,但是我又想把IE旋转效果跟其他浏览使用CSS3 rotate(deg) 一样。那怎么办呢。我在找了一下,发现IE里面有一款滤镜,可以实现旋转角度。代码如下:
filter: progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=0.70710678, M12=-0.70710678, M21=0.70710678, M22=0.70710678);这个效果在IE中如下所示:
假如红色的矩形是我们需要旋转的元素,蓝色矩形是旋转之后的位置,也就是说(0,1)和(1,0)这两个坐标旋转a角之后变成了(x,y)和(m,-n),我们只要知道他们的变换关系就好。那么(x,y)和(m,-n)可以用简单的三角函数算出得到(sin(a), cos(a))和(cos(a), -sin(a))。把这个结果代入单位矩阵中得到
{ | m | -n | } |
x | y |
{ | M11 | M12 | } |
M21 | M22 |
也就是
{ | cos(a) | -sin(a) | } |
sin(a) | cos(a) |
假如a是45°就可以得到如下值。
{ | 0.707 | -0.707 | } |
0.707 | 0.707 |
sin() cos() 可以在自己电脑上打开计算器进行计算。如下图计算了一个45度后的sin值。
其实旋转完了还是有些问题存在的。问题就是元素旋转了IE和FF的中心点不一样了。IE偏离了中心点,为了解决这个问题还是要计算一下。我们先要计算出它旋转后的大小,然后就能知道它旋转后大小的增量,偏移量就是这个增量的一半。公式:W=|sin(a)*h|+|cos(a)*w|,H=|sin(a)*w|+|cos(a)*h| 我这个元素的宽高都是200px...那么旋转后282这样。增量就是82.。。偏移量就是增 量的一半那就是41.。。所以加这个属性margin:-41px;....不这个属性只是针对IE。。所以IE8: margin:-41px\0; IE7: *margin:-41px; IE6: margin:-41px;
有些在IE中不能实现CSS3样式效果,可以使用IE的滤镜来实现。现在把放出来给大家看看。
IE 滤镜
Alpha:设置透明层次.
blur:创建高速度移动效果,即模糊效果.
Chroma:制作专用颜色透明.
DropShadow:创建对象的固定影子.
FlipH:创建水平镜像图片.
FlipV:创建垂直镜像图片.
glow:加光辉在附近对象的边外.
gray:把图片灰度化.
invert:反色.
light:创建光源在对象上.
mask:创建透明掩膜在对象上.
shadow:创建偏移固定影子.
wave:波纹效果.
Xray:使对象变的像被x光照射一样.
W3C滤镜
grayscale 灰度
sepia 褐色
saturate 饱和度
hue-rotate 色相旋转
invert 反色
opacity 透明度
brightness 亮度
contrast 对比度
blur 模糊
drop-shadow 阴影
滤镜:透明效果
语法:
filter:Alpha(Opacity=opacity,FinishOpacity=finishopacity,Style=style,StartX=startX,StartY=startY,FinishX=finishX,FinishY=finishY)说明:
Opacity:起始值,取值为0~100, 0为透明,100为原图。
FinishOpacity:目标值。
Style:1或2或3
StartX:任意值
StartY:任意值
FinishX:任意值
FinishY:任意值
一般透明效果:filter:alpha(opacity=30);
W3C代码:-webkit-filter:opacity(0.3); 或 opacity:0.3;
线型透明:filter: alpha(Opacity=0, FinishOpacity=100, Style=1, StartX=0, StartY=0, FinishX=200, FinishY=180);
放射透明:filter: Alpha(Opacity=0, FinishOpacity=100, Style=2);
柔光效果filter:alpha(opacity=100, finishOpacity=0,style=3);
滤镜:投影效果
语法:
filter:DropShadow(Color=color, OffX=offX, OffY=offY, Positive=positive)说明:
Color:#rrggbb格式,任意。
Offx:X轴偏离值。
Offy:Y轴偏离值。
Positive:如果为"True"为任何的非透明像素建立可见的投影.如果为"False",为透明的像素部分建立可见的投影。
投影效果:
filter:progid:dXImageTransform.Microsoft.DropShadow(color=#000000,offX=5,offY=5,positives=true);
W3C代码:
-webkit-filter:drop-shadow(5px 5px 0 #000000); 或 box-shadow:5px 5px 0 #000;
阴影效果:
progid:DXImageTransform.Microsoft.Shadow(color=#000000,direction=135,strength=10);
虑色效果:
progid:DXImageTransform.Microsoft.Chroma(color=#59A074);
马赛克:
filter:progid:dXImageTransform.Microsoft.Pixelate(maxsquare=3);
发光效果:
filter:progid:dXImageTransform.Microsoft.Glow(color=#000000,Strength=5);
水平翻转:filter: fliph;
W3C代码:-webkit-transform:rotateY(180deg);
垂直翻转:filter: flipv;
W3C代码:-webkit-transform:rotateX(180deg);
反色效果:filter: invert;
W3C代码:-webkit-filter:invert(1);
黑白效果:filter:gray;
W3C代码:-webkit-filter:grayscale(1);
X光照片:filter:xray;
W3C代码:-webkit-filter:grayscale(1) invert(1);
滤镜:模糊效果
语法:
filter:Blur(Add = add, Direction = direction, Strength = strength)说明:
Add:指定图片是否被改变成印象派的模糊效果.1为真,0为假。
Direction:角度,0~315度,步长为45度。
Strength:有多少像素的宽度受到模糊影响,默认是5个像素。
风动模糊(有角度):filter: blur(add=true,direction=45,strength=30);
一般模糊:
filter:progid:DXImageTransform.Microsoft.Blur(pixelradius=7);
W3C代码:-webkit-filter:blur(3px);
滤镜:波纹效果
语法:
filter: Wave(Add=add,Freq=freq,LightStrength=strength,Phase=phase, Strength=strength)
说明:
Add:是否打乱,默认是"True"。
Freq:产生多少个完整的波纹。
LightStrength:增强光影,0-100的整数值。
Phase:正弦波的偏移量,通常值为0,范围是0-100的整数值。
Strength:代表振幅大小。
正弦波纹:filter: Wave(Add=0, Freq=60, LightStrength=1, Phase=0, Strength=3);
渐变效果:filter:
progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr="#000000", EndColorStr="#ffffff");
W3C代码:
background:-webkit-linear-gradient(#000000 0, #ffffff 100%);
相关推荐
- Python入门学习记录之一:变量_python怎么用变量
-
写这个,主要是对自己学习python知识的一个总结,也是加深自己的印象。变量(英文:variable),也叫标识符。在python中,变量的命名规则有以下三点:>变量名只能包含字母、数字和下划线...
- python变量命名规则——来自小白的总结
-
python是一个动态编译类编程语言,所以程序在运行前不需要如C语言的先行编译动作,因此也只有在程序运行过程中才能发现程序的问题。基于此,python的变量就有一定的命名规范。python作为当前热门...
- Python入门学习教程:第 2 章 变量与数据类型
-
2.1什么是变量?在编程中,变量就像一个存放数据的容器,它可以存储各种信息,并且这些信息可以被读取和修改。想象一下,变量就如同我们生活中的盒子,你可以把东西放进去,也可以随时拿出来看看,甚至可以换成...
- 绘制学术论文中的“三线表”具体指导
-
在科研过程中,大家用到最多的可能就是“三线表”。“三线表”,一般主要由三条横线构成,当然在变量名栏里也可以拆分单元格,出现更多的线。更重要的是,“三线表”也是一种数据记录规范,以“三线表”形式记录的数...
- Python基础语法知识--变量和数据类型
-
学习Python中的变量和数据类型至关重要,因为它们构成了Python编程的基石。以下是帮助您了解Python中的变量和数据类型的分步指南:1.变量:变量在Python中用于存储数据值。它们充...
- 一文搞懂 Python 中的所有标点符号
-
反引号`无任何作用。传说Python3中它被移除是因为和单引号字符'太相似。波浪号~(按位取反符号)~被称为取反或补码运算符。它放在我们想要取反的对象前面。如果放在一个整数n...
- Python变量类型和运算符_python中变量的含义
-
别再被小名词坑哭了:Python新手常犯的那些隐蔽错误,我用同事的真实bug拆给你看我记得有一次和同事张姐一起追查一个看似随机崩溃的脚本,最后发现罪魁祸首竟然是她把变量命名成了list。说实话...
- 从零开始:深入剖析 Spring Boot3 中配置文件的加载顺序
-
在当今的互联网软件开发领域,SpringBoot无疑是最为热门和广泛应用的框架之一。它以其强大的功能、便捷的开发体验,极大地提升了开发效率,成为众多开发者构建Web应用程序的首选。而在Spr...
- Python中下划线 ‘_’ 的用法,你知道几种
-
Python中下划线()是一个有特殊含义和用途的符号,它可以用来表示以下几种情况:1在解释器中,下划线(_)表示上一个表达式的值,可以用来进行快速计算或测试。例如:>>>2+...
- 解锁Shell编程:变量_shell $变量
-
引言:开启Shell编程大门Shell作为用户与Linux内核之间的桥梁,为我们提供了强大的命令行交互方式。它不仅能执行简单的文件操作、进程管理,还能通过编写脚本实现复杂的自动化任务。无论是...
- 一文学会Python的变量命名规则!_python的变量命名有哪些要求
-
目录1.变量的命名原则3.内置函数尽量不要做变量4.删除变量和垃圾回收机制5.结语1.变量的命名原则①由英文字母、_(下划线)、或中文开头②变量名称只能由英文字母、数字、下画线或中文字所组成。③英文字...
- 更可靠的Rust-语法篇-区分语句/表达式,略览if/loop/while/for
-
src/main.rs://函数定义fnadd(a:i32,b:i32)->i32{a+b//末尾表达式}fnmain(){leta:i3...
- C++第五课:变量的命名规则_c++中变量的命名规则
-
变量的命名不是想怎么起就怎么起的,而是有一套固定的规则的。具体规则:1.名字要合法:变量名必须是由字母、数字或下划线组成。例如:a,a1,a_1。2.开头不能是数字。例如:可以a1,但不能起1a。3....
- Rust编程-核心篇-不安全编程_rust安全性
-
Unsafe的必要性Rust的所有权系统和类型系统为我们提供了强大的安全保障,但在某些情况下,我们需要突破这些限制来:与C代码交互实现底层系统编程优化性能关键代码实现某些编译器无法验证的安全操作Rus...
- 探秘 Python 内存管理:背后的神奇机制
-
在编程的世界里,内存管理就如同幕后的精密操控者,确保程序的高效运行。Python作为一种广泛使用的编程语言,其内存管理机制既巧妙又复杂,为开发者们提供了便利的同时,也展现了强大的底层控制能力。一、P...
- 一周热门
- 最近发表
- 标签列表
-
- HTML 教程 (33)
- HTML 简介 (35)
- HTML 实例/测验 (32)
- HTML 测验 (32)
- JavaScript 和 HTML DOM 参考手册 (32)
- HTML 拓展阅读 (30)
- HTML文本框样式 (31)
- HTML滚动条样式 (34)
- HTML5 浏览器支持 (33)
- HTML5 新元素 (33)
- HTML5 WebSocket (30)
- HTML5 代码规范 (32)
- HTML5 标签 (717)
- HTML5 标签 (已废弃) (75)
- HTML5电子书 (32)
- HTML5开发工具 (34)
- HTML5小游戏源码 (34)
- HTML5模板下载 (30)
- HTTP 状态消息 (33)
- HTTP 方法:GET 对比 POST (33)
- 键盘快捷键 (35)
- 标签 (226)
- opacity 属性 (32)
- transition 属性 (33)
- 1-1. 变量声明 (31)
