我爱水煮鱼 » 开源 » 使用 CSS3 实现圆角效果

使用 CSS3 实现圆角效果

我爱水煮鱼博客上使用的图片比较多,虽然我采用了服务器缓存gzip 压缩以及对 CSS 和图片文件设置了一个比较合理的过期时间,但是还是比较慢。所以减少图片的使用还是速度加快的王道,所以我今天学习了下使用 CSS3 技术不需要图片即可实现圆角,把侧边栏标题背景的圆角效果和搜索框的圆角效果用 CSS3 实现。记录一下以便以后使用。

W3C 很早就制订了实现了 CSS 圆角的 CSS3 属性:border-radius,Firefox 和 Safari 也通过私有属性实现了该功能:

代码非常简单:

<div style=" background-color: #ccc; -moz-border-radius: 5px;  -webkit-border-radius: 5px; border: 1px solid #000; padding: 10px;" >Firefox 和 Safari 实现圆角</div>

效果如下:

Firefox 和 Safari 使用私有属性实现圆角效果

其中 -moz-border-radius 是 Firefox 实现圆角的私有属性,而 -webkit-border-radius 是 webkit 内核浏览器(如 Safari 和 Chrome)实现圆角的私有属性,如果你只要指定某一个角是圆角的话,它们都分别定义了四个属性:

-moz-border-radius-topleft / -webkit-border-top-left-radius
-moz-border-radius-topright / -webkit-border-top-right-radius
-moz-border-radius-bottomleft / -webkit-border-bottom-left-radius
-moz-border-radius-bottomright / -webkit-border-bottom-right-radius

当然 IE9 以下版本还是不支持,所以该效果只能在 IE9, Firefox, Safari, 以及 Chrome 中查看。

最新的 IE9 已经支持 CSS3 圆角

标签:

分享到:

请选择你看完该文章的感受:

不错 超赞 无聊 扯谈 不解 路过
  1. 这种原生的属性支持当然是好;但却不是全局浏览器的支持,所以也是我自己在主题中一直还是使用图片的原因了;或者想各个访问者都能看到自己原有的设计,这个还是重要一点。

  2. 奇怪,这个box在google reader里面竟然不显示圆角,在你这就显示圆角了。

  3. 唔,twitter登不上的时候,就只好拿douban帐号来玩。
    其实css3很好玩的,我就在blog上用到了rgba透明、transform动画、text(box)-shadow阴影。期待这些东西推广开来

  4. 我会选择用圆角设计。在兼容css3的浏览器里有更为舒适的圆角边框,IE仍维持矩形原状;因为IE,Firefox等本身是有区别的。所以我能接受

    • 恩,我也是这么想的,在 Firefox 这些现代的浏览器上使用最先进的 Web 技术。

  5. 我也是因为这个问题苦恼了N久~
    就是因为IE没有办法支持~`
    不然多好办~
    结果都只能通过比较麻烦的CSS属性进行控制圆角了~

  6. 无图实现打圆角其实也无非就是多次使用CSS的边框设置做出多个细小的形状,刚好一半的宾框是背景色,一半的边框不显示,多次调用。教材看过,不过对打圆角无爱,哈