(转)CSS 圆角背景与三角形
时间:2010-11-04 来源:司徒正美
查看演示: 点此查看DEMO
CSS圆角背景
通过改变层叠元素的margin值实现圆角效果。当然,有人会说不用这么麻烦,CSS3几句代码就可以搞定,但目前来说不实用,支持的浏览器没几个。
css部分
.r_top, .r_bottom {display:block; background:transparent; font-size:1px}/*左上右上角和左下右下角的容器*/ .r_a, .r_b, .r_c, .r_d {display:block; overflow:hidden}/*四个圆角*/ .r_a, .r_b, .r_c{ border-width:0 2px} .r_c {margin:0 2px} .r_d { margin:0 1px}
html部分
.....内容容器.....
CSS三角形
这个就比较简单了, 把元素定义成块级0大小(0宽0高0字号0行高)后, 通过改变元素的border-color值实现。 本文用的是em元素, 当然, 如果你项目中用em比较频繁, 为避免冲突也可以用samp,strong等元素。当然, 即便用CSS实现的三角形, 万恶的IE6还是会给你添点麻烦: IE6不支持border-color的transparent值, 怎么办? 为ie6单独写一个border-color值, 然后用chroma滤镜实现透明, 详见代码
css部分
em{display:block;width:0;height:0;font-size:0;line-height:0;border-width:40px;border-style:solid;border-color:#cf6 #fff #39c #ffc;_filter:chroma(color=#000000)/*色度滤镜,让IE6实现透明borderColor.滤镜的颜色值不可简写*/} em.a{border-color:transparent transparent #fff transparent;_border-color:#000 #000 #fff #000} em.b{border-color:transparent transparent transparent #fff;_border-color:#000 #000 #000 #fff} em.c{border-color:#fff transparent transparent transparent;_border-color:#fff #000 #000 #000} em.d{border-color:transparent #fff transparent transparent;_border-color:#000 #fff #000 #000}
html调用
<em></em>
本文只是CSS实现方法只是众多CSS方法中的一种,更多的方法,请自行Google。
新页面查看原文
相关阅读 更多 +