前言:通常情况下,我们使用css3样式中的border-radius实现圆角效果,但是这种方法IE8.0以下版本浏览器是不支持的。 但是目前使用IE8.0的用户还比较多,Windows XP系统最高支持IE8.0,还有些其他的某些Trident内核浏览器也是还停留在IE7.0,所以如果要求比较高的情况下,就要考虑其他办法来实现这个效果。

怎么样实现能兼容性最好的圆角特效呢?

目前有三种方法:

方法一.CSS3实现的圆角效果

参考代码

 <style type="text/css">
#nav {
height:158px;
width:200px;
-moz-border-radius:4px; /*Gecko(Firefox内核)浏览器圆角样式*/
-webkit-border-radius:4px; /*webkit(Chrome内核)浏览器圆角样式*/
border-radius:4px; /*Trident(IE内核)浏览器圆角样式*/
background:#59C3FF;
padding:8px;}
</style> <div id="nav">CSS3实现的圆角效果,IE8.0以下浏览器不支持</div>

优点:使用的时候只需要使用简写方法,给标签指定样式即可;
缺点:IE8.0及以下版本不支持。

方法二.png图片实现的圆角效果

参考代码:

 <style type="text/css">
#png_radius {height: 158px;width: 200px;position: relative;border: 1px solid #ccc;padding:8px;}
.radius{width: 8px;height: 8px;background: url(radius.png) no-repeat;position: absolute;}/*显示四个圆角的div的公共样式*/
.radius.left_top{float: left;left: -1px;top: -1px;background-position:0 0;}/*左上角的div的背景样式,left:-1px;top:-1px;为了遮蔽父层的边框*/
.radius.right_top{float: right;right: -1px;top: -1px;background-position:-8px 0;}/*右上角的div的背景样式*/
.radius.left_bottom{float: left;left: -1px;bottom: -1px;background-position:0 -8px;}/*左下角的div的背景样式*/
.radius.right_bottom{float: right;right: -1px;bottom: -1px;background-position:-8px -8px;}/*右下角的div的背景样式*/
</style>
<div id="png_radius">
<!--圆角区-->
<div class="radius left_top"></div>
<div class="radius right_top"></div>
<!--内容区-->
<div style="height: 200px;clear: both;padding: 8px;">
png图片实现的圆角效果,兼容所有支持png图片的浏览器
</div>
<!--圆角区-->
<div class="radius left_bottom"></div>
<div class="radius right_bottom"></div>
</div>

优点:兼容性比较好,只要支持png透明图片的浏览器都支持,目前主流的浏览器都支持;
缺点:需要增加额外的标记进行布局,使用图片,相对于css样式占的资源比较大。

方法三.使用PIE插件,让IE8.0以下浏览器支持CSS3

参考尺码:

 <script language="javascript" type="text/javascript">
//引用pic插件
$(function () {
if (window.PIE) {
$('.rounded').each(function () {
PIE.attach(this);
});
}
});
</script>
<style type="text/css">
#nav { height:158px; width:200px; -moz-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; background:#59C3FF;behavior: url(pie.htc);padding:8px;}
</style>
<div id="nav">圆角效果,兼容Trident(IE内核),Gecko(Firefox内核),Webkit(Google Chrome内核)等多种内核浏览器</div>

优点:兼容性比较好,解决IE8.0以下版本不支持CSS3的问题;

缺点:需要引用pic.htc,这个文件有40KB大小,占用的资源空间比较大。

总结:

以上三种方法,各有优点和缺点,可以根据不同的需要和情况选择合适的方法。 1. 纯CSS3方法:如果对圆角的要求不太严格,只求大部分主流浏览器支持,不考虑ie8.0及以下版本的情况下,直接用纯CSS3实现是最简单的。
2. 使用Png图片:如果想让所有的浏览器都支持,但是又不想占用太多资源,那么,使用png透明图片就是最好的选择了。
3. 使用pie插件:如果想让所有的浏览器都支持,但是又不想根据不同圆角需求制作不同的png圆角图片,不想添加多余的标签,忽略插件的大小,那么可以选择这种方式。

实例下载:http://download.csdn.net/detail/xyytcs/7037227

欢迎转载,转载请注明出处:http://www.cnblogs.com/xyyt/p/3599505.html

兼容多浏览器的html圆角特效的更多相关文章

  1. 兼容所有浏览器的CSS3圆角

    兼容所有浏览器的CSS3圆角      解决CSS3圆角兼容所有浏览器的方法.本文提到了一种很不错的实现跨浏览器圆角的解决方案,但是说的不够全面,前端观察最近将整理更多更全面的资源给大家,敬请期待. ...

  2. 一个酷炫的,基于HTML5,Jquery和Css的全屏焦点图特效,兼容各种浏览器

    基于HTML5和CSS的焦点图特效,梅花图案的背景很有中国特色,而且还会动哦,效果超炫,推荐下载! 演示图 html代码 <!DOCTYPE html PUBLIC "-//W3C// ...

  3. CSS 实现图片灰度效果 兼容各种浏览器

    CSS 实现图片灰度效果 兼容各种浏览器如360浏览器 CSS实现图片灰度效果就是通过CSS样式让彩色图片呈现为灰色,相当于把一张图像的颜色模式调整为灰度,CSS可以通过以下几种方法来实现灰度效果. ...

  4. CSS兼容各浏览器的hack

    CSS兼容各浏览器的hack:建议:尽可能的手写代码,可以有效的提高学习效率和深度.浏览器的种类多,麻烦自然也多,主要是各种浏览器对某些属性的渲染效果并不相同,所以有时候需要专门针对特定浏览器或者特定 ...

  5. 【原】CSS实现背景透明,文字不透明,兼容所有浏览器

    11.11是公司成立的日子,16岁啦,我呢3岁半,感谢公司给了这样一个平台,让我得以学习和成长,这里祝愿公司发展越来越好~ 进入主题,每年11月11号是光棍节,产生于校园,本来只是一流传于年轻人的娱乐 ...

  6. JS获取回车事件(兼容各浏览器)

    一.用到onkeydown获取事件动作, 二.用到键盘对应代码keyCode, 三. var event=arguments.callee.caller.arguments[0]||window.ev ...

  7. CSS实现背景透明,文字不透明,兼容所有浏览器

    11.11是公司成立的日子,16岁啦,我呢3岁半,感谢公司给了这样一个平台,让我得以学习和成长,这里祝愿公司发展越来越好~ 进入主题,每年11月11号是光棍节,产生于校园,本来只是一流传于年轻人的娱乐 ...

  8. 前台JS(type=‘file’)读取本地文件的内容,兼容各种浏览器

    [自己测了下,能兼容各种浏览器,但是读取中文会出现乱码.自己的解决方法是用notepad++把txt文件编码改为utf-8(应该是和浏览器编码保持一致吧?..)] 原文  http://blog.cs ...

  9. 【转】让Bootstrap 3兼容IE8浏览器

    FROM : http://www.ijophy.com/2014/05/bootstrap3-compatible-with-ie8.html 最近在研究Bootstrap(官方,Github)这个 ...

随机推荐

  1. CentOS 静态IP设置&修改网卡名

    一.CentOS版本查看的方法 1. lsb_release -a (若报命令找不到,直接yum install lsb –y) 2. cat /etc/redhat-release 二.CentOS ...

  2. elasticsearch 复杂查询小记

    以下接口调用都基于5.5版本 JSON 文档格式 { "_index": "zipkin-2017-09-06", "_type": &qu ...

  3. [UE4]添加射击的准心

    其实就是创建一个UI Widget,在UI Widget中添加一个准心图片(png)格式,准心图片设置为屏幕居中对齐,然后在自定义的GameMode中把这个UI Widget添加到视图中.

  4. 【转载】html中object标签详解

    [转载自http://blog.csdn.net/soliy/archive/2010/03/22/5404183.aspx] html标签之Object标签详解 作者:网络    出处:网络     ...

  5. vlc的应用之二:vlc的ActiveX及cab

    请移步https://higoge.github.io/,所有下载资料在那个博客都能找到.谢谢. http://jeremiah.blog.51cto.com/ 2009-05-14补充:8. Act ...

  6. DeepFM模型理论及代码实现

    论文地址:DeepFM: A Factorization-Machine based Neural Network for CTR Prediction

  7. spark streaming 概述

    批处理 & 流处理 像这个是批处理 像这样就是流处理 为什么需要流处理--更多场景需要 Spark Core & RDD 本质上是离线运算 Spark Streaming是什么(分布式 ...

  8. TensorFlow相关的一些技巧

    谷歌开发技术推广工程师 Laurence Moroney 在 Google Cloud Next 大会上进行了一段 42 分钟的演讲,主题是「What's New with TensorFlow?」. ...

  9. PyQt5系列教程(九)QInputDialog的使用

    软硬件环境 Ubuntu 15.10 32bit Python 3.5.1 PyQt 5.5.1 前言 输入框是界面开发中非常常见的控件,本文就来看看PyQt5中QInputDialog的使用 实例 ...

  10. 循环神经网络(RNN)

    1.    场景与应用 在循环神经网络可以用于文本生成.机器翻译还有看图描述等,在这些场景中很多都出现了RNN的身影. 2.    RNN的作用 传统的神经网络DNN或者CNN网络他们的输入和输出都是 ...