<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
*{
margin:0;
padding:0;
}
body{
font-size:12px;
}
.div{
border:1px solid #AAAAAA;
width:440px;
height:220px;
}
.div .div1 {
border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #AAAAAA;
border-style: dashed dashed solid;
border-width: 0 10px 10px;
display: block;
font-size: 0;
height: 0;
left: 0;
line-height: 0;
margin-left: -10px;
position: absolute;
top: 50%;
width: 0;
z-index: 100;
}
.div2:after {
clear: both;
content: ".";
display: block;
height: 0;
visibility: hidden;
}
.div .div1 .div2 {
border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #FFFFFF;
border-style: dashed dashed solid;
border-width: 0 10px 10px;
display: block;
font-size: 0;
height: 0;
left: -10px;
line-height: 0;
position: absolute;
top: 1px;
width: 0;
}
</style>
</head>
<body>
<div class="div" style="position: absolute; z-index: 9999; left: 530px; top: 30px; ">
<span class="div1">
<span class="div2"></span>
</span>
</div>
</body>
</html>
------解决方案--------------------
box_rotate {
-moz-transform: rotate(7.5deg); /* FF3.5+ */
-o-transform: rotate(7.5deg); /* Opera 10.5 */
-webkit-transform: rotate(7.5deg); /* Saf3.1+, Chrome */
filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.9914,M12=-0.1305,M21=0.1305,M22=0.9914,SizingMethod=’auto expand’);
-ms-filter: “progid:DXImageTransform.Microsoft.Matrix(M11=0.9914,M12=-0.1305,M21=0.1305,M22=0.9914,SizingMethod=’auto expand’)”; /* IE8 */
}
除了IE以外,其他浏览器都是用rotate函数,实现某个对象的旋转。比如rotate(7.5deg)就表示顺时针旋转7.5度(degree)。
IE则需要用到一个复杂的滤镜DXImageTransform.Microsoft.Matrix。它一共接受五个参数,前四个参数需要自行计算三角函数,然后分别写成M11 = cos(rotation),M12 = -sin(rotation),M21 = sin(rotation),M22 = cos(rotation),其中的rotation表示旋转角度,如果顺时针旋转7.5度,则rotation就为7.5;第五个参数SizingMethod表示重绘方式,’auto expand’代表自动扩展到新的边界。
除了这个滤镜,IE还有一个稍微简单一点的滤镜DXImageTransform.Microsoft.BasicImage(rotation=x)。其中的x只能取值为1,2,3,0,分别表示顺时针选择90度、180度、270度和360度。