元素中心旋转在CSS3和IE滤镜中的实现

IE 滤镜实现图片旋转效果 .. 阅读详情
  中心旋转在CSS3中是很容易实现的,CSS3有提供一个rotate方法,直接使用它即可。
<!DOCTYPE>
<style>
div {
  width
:100px;height:100px;text-align:center;
  font
:14px/100px 微软雅黑;color:#000;
  background
:#CCF;
  /*CSS3旋转*/
  -webkit-transform
:rotate(45deg);
  -moz-transform
:rotate(45deg);
  -o-transform
:rotate(45deg);
}
</style>
<div>次碳酸钴</div>

  这个rotate就一个角度的参数,我就不多说什么了,我们着重说关键的IE。IE中没有提供rotate这个方法,必须用构造旋转矩阵去变换,如果不知道那是个啥,最好去看看线性代数。不过看下面图片应就能明白它的基本原理。

  假如红色的矩形是我们需要旋转的元素,蓝色矩形是旋转之后的位置,也就是说(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
  也就是
{ cos(a) -sin(a) }
sin(a) cos(a)
  假如a是45°就可以得到如下值。
{ 0.707 -0.707 }
0.707 0.707
  我们把这个值用在IE的Matrix滤镜上<!DOCTYPE>
<style>
div {
  width
:100px;height:100px;text-align:center;
  font
:14px/100px 微软雅黑;color:#000;
  background
:#CCF;
  /*IE滤镜旋转*/
  filter
:progid:DXImagetransform.Microsoft.Matrix(
    M11=0.707,M12=-0.707,
    M21=0.707,M22=0.707,
    SizingMethod='auto expand'
  );
}
</style>
<div>次碳酸钴</div>

  看吧,旋转已经生效了。滤镜中的SizingMethod这个参数的值是'auto expand'是为了让变换后的内容不局限于原理的区域大小如果不设置这个属性,超出原区域的东西会被剪掉,所以做旋转效果这个是必要的。
  虽然是已经可以旋转了,但是还没完。把这个效果和CSS3的效果对比下就知道,这个旋转了以后中心点会根据实际大小到处跑,所以我们要添加个偏移量来固定这个中心点。我们先要计算出它旋转后的大小,然后就能知道它旋转后大小的增量,偏移量就是这个增量的一半。

  W和H的值根据初等数学就能计算出来,W=|sin(a)*h|+|cos(a)*w|,H=|sin(a)*w|+|cos(a)*h|。我们的这个元素宽度高度是100,那么旋转后的宽度高度就是141.4,增量是41.4,偏移量就是20.7。我们可以用margin负值来让元素移动到这个偏移量的位置。
<!DOCTYPE>
<style>
div {
  width
:100px;height:100px;text-align:center;
  font
:14px/100px 微软雅黑;color:#000;
  background
:#CCF;
  /*IE滤镜旋转*/
  margin
:-20.7px;
  filter
:progid:DXImagetransform.Microsoft.Matrix(
    M11=0.707,M12=-0.707,
    M21=0.707,M22=0.707,
    SizingMethod='auto expand'
  );
}
</style>
<div>次碳酸钴</div>

  这样旋转才算是真正完成。
兼容IE的旋转效果 先看看效果 chrome下 IE下效果相同,也就是该源码是一个兼容的方案,包括ie6-8。这里介绍两个方案 方案1: 1.按照上图可以切一张图片,旋转45度保存 2.然后使该图片旋转-45度即可 transform: rotate(-45deg);方案2: 1.这里不用切图,直接做一个方形的背景,文字也是自己填充,只不过要有两次旋转 2.外层div旋转-45度,内层文字旋转4 阅读详情

相关推荐

基于H5,CSS3及JS的四星环绕中心点旋转效果

本效果是基于HTML5,CSS3及JavaScript实现的,实现了移动端和web端的兼容居中显示。同时,以中心图片为圆点,四周图片环绕中心图片旋转,主要使用到的技术点在于z-index以及border-radius:50%,实现效果仅供参考(其中图片请自行替换)。

案例-旋转中心(CSS3)

案例-旋转中心(CSS3) <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> &

... 949

STM32驱动AD2S1210实现旋变解码与角度读取

旋转变压器作为一种耐高温、抗振动的角度传感器,在工业伺服、机器人关节和电动汽车电驱等场景中占据重要地位。其输出信号需要经过专用转换芯片处理才能被MCU高效使用。AD2S1210是一款典型的旋变数字转换器(RDC),内部采用Type II型跟踪环,将模拟SIN/COS信号实时解算为数字角度与速度,降低了处理器负担并提升抗干扰能力。本文基于STM32平台,详细介绍了AD2S1210的硬件接线、SPI通信配置、寄存器初始化流程,以及读取位置数据时的SAMPLE脉冲时序等关键实现。同时总结了常见故障如全FF、角度跳

weixin_34194829的博客 194

【CSS3】CSS3 2D 转换 - rotate 旋转 ③ ( 使用 transfrom-origin 设置旋转中心点 | 使用 方位词 / 百分比值 / 像素值 设置旋转中心点 )

一、使用 transfrom-origin 设置旋转中心点 二、代码示例 - 使用 transfrom-origin 设置旋转中心点 1、代码示例 - 使用方位词设置旋转中心点 2、代码示例 - 使用百分比设置旋转中心点 3、代码示例 - 使用像素值设置旋转中心点

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 6837

SBM与超效率SBM模型实战:从原始面板数据到MATLAB高效实现

本文详细介绍了SBM模型与超效率SBM模型的核心原理,并提供了从原始面板数据预处理到MATLAB高效实现的完整实战指南。通过具体代码解析,帮助研究者掌握如何利用MATLAB进行数据标准化、模型构建、效率求解及结果可视化,从而精准评估决策单元的相对效率,尤其适用于在高效单元中进一步精细排名的场景。

weixin_29100399的博客 478

一篇NS SAR ADC的学习记录

一篇NS SAR ADC的学习记录 内容包含: OverSampling Noise Shaping Dynamic Amplifier DAC with Redundancy 最近看了些有意思的SAR ADC结构,但是因为确实对模拟这个领域不太熟,导致了一系列的级联查找,最终达到了一个大概能懂的状态,为了理清思路,顺便别让看了这么些天的东西浪费了,还是计划写篇文章。 ps:由于不是一篇特别正紧的报告,参考文献就写的比较随便,且我还是个做数字的 A 13.5-ENOB, 107-μW Noise-Sha

weixin_45669724的博客 8710

IE 滤镜介绍

IE 滤镜介绍

似水流年QC的博客 833

LayaBox CommandBuffer描边使用详细

项目需要使用LayaBox做一个给3D物体动态描边的一个功能,前前后后踩了一些坑算是把这个东西给做出来了把我改好的代码贴上,分享给大家。 (1)想要使用描边你的引擎版本必须 >=2.9.0 (2)你必须下载 Laya官方的BlurShader库才能使用这个功能,下载地址:https://github.com/layabox/layaair-demo/tree/master/h5/3d/ts/LayaAir3D_PostProcess/BlurShader 下载完之后把BlurShader放到自己项目的

小智队长 1734

css根据某个角旋转,设置旋转中心点

前言: css3里面是有动画的属性的,里面有个旋转,那么旋转怎么来根据元素的不同点来旋转呢?这里分享下方法。 实现源码: 1、旋转的代码: transform:rotate(7deg); 旋转的兼容性写法: -ms-transform:rotate(7deg); /* IE 9 */ -moz-transform:rotate(7deg); /* Firefox */ -webkit-transform:rotate(7deg); /* Safari 和 Chrome */ ...

浩星 1万+

Vivado时序违例debug

显示了数据路径延迟。例如,对于违例路径,若布线延迟超过50%,说明该延迟是导致时序不能收敛的主要因素,因此可围绕降低布线延迟这一靶心达到时序收敛。对于跨时钟域路径,Requirement数值会有所变化,但如果数值为0.1,显然是不合理的。目的时钟路径单元,时钟从adc0_bufg/O输出,到达PLLE4_ADV,经过BUFGCE输出,最终到达SRLC32E移位寄存器,对应。源时钟路径单元,时钟从adc0_bufg/O输出,到达PLLE4_ADV,经过BUFGCE输出,最终到达FDRE触发器,对应。

weixin_44513618的博客 1618

【算法】克里金kriging参数值预测模型

模型中特征值2个,目标值1个,data数据集如图所示。搭建kriging参数值预测模型。

weixin_48618536的博客 5059

css3-旋转中心点案例

* 默认的是50% 50% 等价于center center *//* 可以跟方位名词 *//* 可以是px像素 */

h131425q的博客 823

030、微透镜阵列与光场成像:从光场相机到深度感知的演进

文章摘要: 光场成像通过微透镜阵列(MLA)同时记录光线的位置与方向,实现单次曝光获取三维信息。其核心架构包括主镜头+MLA+传感器或相机阵列,各有分辨率与体积的权衡。光场支持先拍照后对焦和深度估计,但受限于微透镜基线短,精度较低。深度算法需结合多视角立体匹配与极平面图像分析,并处理噪声和温度漂移等实际问题。光场适用于短距离动态场景(如手势识别),而远距离高精度需求仍需激光雷达。建议初学者通过二手光场相机和开源工具入门,理解光场“角度域”与“空间域”的协同机制。

sundong_81的博客 50

ie 滤镜旋转 div 实现css3的效果

//ie 滤镜旋转 回复到原来的位置 -2 减去 border 实现定点旋转 var orginW = target.clientWidth-2, orginH = target.clientHeight-2; var W=Math.abs(sinDeg*orginH)+Math.abs(cosDeg*orginW); var H=Math.abs(sinDeg*orgin

OnePiece 1516

Cesium 场景特效之【全球海洋】GL2兼容版

Cesium 场景特效之【全球海洋】GL2兼容版

喜欢钻研前端和分享技术 1278

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

计算IE的旋转角度与滤镜

本帖最后由 lshcw3c 于 2013-4-8 16:16 编辑 在IE中使用CSS3的旋转效果是不能实现的,,但是我又想把IE旋转效果跟其他浏览使用CSS3 rotate(deg) 一样。那怎么办呢。我在找了一下,发现IE里面有一款滤镜,可以实现旋转角度。代码如下: filter: progid:DXImageTransform.Microsoft.Matrix(sizingMet

zhangxianya的专栏 800

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

css图片旋转

图片旋转效果的一些研究、jQuery插件及实例 一、前面的唠叨 图片的旋转可以说是一种效果,但是逐渐的,旋转已经不单单是属于视觉效果那个范畴,其更具有使用性,功能性。我们都知道,照片有时候是需要横过来的拍的,当我们预览或共享到web上时需要进行旋转。这个操作在以往可能更多的是交给软件去完成,然后再将旋转到正常角度的图片发布到web上。但是,现在直接就可以在web上对图片进行旋转之类的处理,

jcx5083761的专栏 2万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

IE8上面的旋转和透明度,利用滤镜属性去处理(兼容css3的transform和rgba())

1.关于在IE浏览器上面的一个旋转问题 IE8不支持css3的transform属性,因此在兼容ie8的时候需要用到滤镜来进行兼容 语法: 兼容c3属性的浏览器在设置旋转属性的时候: transform:rotate(-30deg);  -ms-transform:rotate(-30deg);  -o-tranform:rotate(-30deg);  -webkit-transform:rotate(-30deg);  -moz-transform:rotate(

weixin_41757599的博客 885

兼容所有浏览器的旋转效果-IE滤镜Matrix和CSS3transform

在现代浏览器中使用CSS3的transform样式即可轻松搞定,但是对于国内IE浏览器(特别是7,8)还占有较大份额的情况下,兼容性还是必须要考虑的,所以也特意记录下IE旋转滤镜的使用。 在IE下的旋转滤镜有两种: 第一种: CSS样式 filter:progid:DXImageTransform.Microsoft.BasicImage(rotation:1) 其中rot...

weixin_33700350的博客 472

CSS3+js实现多彩炫酷旋转圆环时钟效果

CSS3+js实现多彩炫酷旋转圆环时钟效果 by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wordpress/?p=1016 一、demo以及下载 上图为Firefox3.6下的效果截图,在IE浏览器下也有效果,只是微微有些bug,这个后面会说的。 您可以

appteam_vlctech的专栏 2214

IE矩阵滤镜Matrix旋转与缩放及结合transform的拓展

一、前面的点唠叨 IE浏览器下Matrix滤镜可以实现旋转效果早在去年1月份在“图片旋转效果的一些研究、jQuery插件及实例” 一文中就有过还算详细的介绍。//zxx:其中还提及BasicImage滤镜-亦可旋转与翻转 这里之所以要重新嚼以前嚼过的烂叶子是因为我之前以为IE Matrix矩阵滤镜只能实现元素的旋转与拉伸,但是就在前几天发现Matrix滤镜还有元素比例缩放的功能,类似于zoom属

meloseven的专栏 734

CSS3魔法堂:CSS3滤镜及Canvas、SVG和IE滤镜替代方案详解

一、前言                             IE特有的滤镜常常作为CSS3各种新特性的降级处理补充,而Adobe转向HTML5后与Chrome合作推出CSS3的Filter特性,因此当前仅 Webkit内核的浏览器支持CSS3 Filter,而FF和IE10+则需要使用SVG滤镜(svg effects for html)或Canvas作为替代方案处...

denglangcheng82460的博客 139

html中旋转属性,IE中的CSS旋转属性

幕布斯6054654要在IE中旋转45度,您需要样式表中的以下代码:filter:progid:DXImageTransform.Microsoft.Matrix(sizingMethod='autoexpand',M11=0.7071067811865476,M12=-0.7071067811865475,M21=0.7071067811865475,M22=0.7071067811...

weixin_35973521的博客 174

网页中图片旋转的几种实现方式

网页中图片旋转一般有下面三种常见的实现方式: 一、 ie 滤镜 IE的图形旋转滤镜,通过指定BasicImage滤镜的rotation值旋转元素,旋转方向为顺时针,旋转的中心点为元素的左上角。rota

wangchaoqi1985的博客 2万+
上一篇: ie滤镜 实现div旋转,旋转后位置改变了,怎么恢复到原来的位置
下一篇: js 中取绝对值
OnePiece_Sky
博客等级 码龄15年 9粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值