我在IE8上使用border-radius时遇到了问题,目前我使用的是pie.js,但我不建议使用这个js库,因为它存在缺陷。如果你有一个小网站,且页面不多,那么使用该库就足够了,但如果你有一个复杂的应用程序,其中使用了许多不同的框架,那么使用该库就不可能了。CurvyCorners或其他大型库也有相同的问题。
因此,如果有人能帮我提供一个小的jQuery或javascript插件,只用于在IE 8上实现border-radius,我将感激不尽。
我在IE8上使用border-radius时遇到了问题,目前我使用的是pie.js,但我不建议使用这个js库,因为它存在缺陷。如果你有一个小网站,且页面不多,那么使用该库就足够了,但如果你有一个复杂的应用程序,其中使用了许多不同的框架,那么使用该库就不可能了。CurvyCorners或其他大型库也有相同的问题。
因此,如果有人能帮我提供一个小的jQuery或javascript插件,只用于在IE 8上实现border-radius,我将感激不尽。
试试这个:
要求:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="http://malsup.github.com/jquery.corner.js"></script>
Javascript:
$('.box').corner();
HTML:
<div class="box">Hello</div>
CSS:
box{
width:150px;
height:28px;
padding:10px;
}
除了您在问题中描述的库之外,我认为您无法在IE8中使用曲线角。
如果您真的想要它们,您可能可以使用图像来实现弯曲的角效果,但这会增加带宽和代码混乱的成本。
background-position
处理。客户端只需要下载一次该图像文件,然后将其缓存在内存中。因为只有一个文件,所以不会花费几分钟的时间。 - ShadowScripter为什么不使用css的:before和:after伪类来添加曲线角呢?
你对Tom Will的回答发表的评论暗示了你有很多表单输入框,是吗?
我猜它们的宽度大部分都是相同的。
只需创建一些类,如curved-std-width
、curved-lge-width
、curved-sml-width
,然后在CSS中这样做:
.curved-std-width:before {
height: 5px;
background: url('curved-top-5px.png');
}
.curved-std-width:after {
height: 5px;
background: url('curved-bottom-5px.png');
}
这样做应该可以很好地工作,而无需在表单输入字段之前或之后添加无尽的HTML。
否则,您也可以使用jQuery来完成:
$(':input').before('<div class="left-top-corner"></div><div class="right-top-corner"></div>').after('<div class="left-bottom-corner"></div><div class="right-bottom-corner"></div>');
然后适当地进行样式设置。
为什么不使用jQuery的corner插件?
你可以轻松地将圆角应用于任何具有特定类名或ID的元素;例如:
$("#box1").corner();
<div>
元素和使用CSS的background-image来模拟圆角的外观。 有关此最后一种解决方案的说明,请参见this tutorial。如果您事先知道输入字段的背景颜色(对于提交按钮可能存在问题),那么以下代码看起来可能比较丑陋但仍可用:http://jsfiddle.net/563c5/1/
我不知道在普通计算机上呈现大量输入字段时它会表现如何。
IE8支持行内CSS图片,并且您只需要一个小图像即可获得四个圆角。任何依赖角落图像的解决方案实际上可能只需要额外的几个字节的带宽。
使用这个:http://css3pie.com/
PIE使得Internet Explorer 6-9能够呈现一些最有用的CSS3装饰特性。
支持的CSS3特性
border-radius
box-shadow
border-image
multiple background images
linear-gradient as background image
我建议尝试使用Modernizr,它的好处是可以用它来替换大多数(如果不是全部)旧浏览器中不支持的CSS3。我已经在许多大型Web应用程序上使用它而没有任何问题。
您还可以查看jQuery UI库,我相信其中有一些圆角脚本。
希望这可以帮到您...祝您好运!