CSS圆角背景与三角形实现技巧

  次阅读 作者:智能小宝 来源:互联网 2016-03-25 16:31 我要评论(0)

通过改变层叠元素的margin值实现圆角效果.当然,有人会说不用这么麻烦,css3几句代码就可以搞定,但目前来说不实用,支持的浏览器没几个.

代码如下

复制代码

.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{height:1px}

.r_b, .r_c, .r_d{background:#cf6}

.r_a {margin:0 5px}

.r_b {margin:0 3px; border-width:0 2px}

.r_c {margin:0 2px}

.r_d {height:2px; margin:0 1px}

html部分

代码如下

复制代码

<!--左上角/右上角-->

<div class=r_top><em> </em><em> </em><em></em><em></em></div>

<div class=box>.....内容容器.....</div>

<!--左下角/右下角-->

<div class=r_bottom><em></em><em></em><em></em><em></em></div>

个就比较简单了, 把元素定义成块级0大小(0宽0高0字号0行高)后, 通过改变元素的border-color值实现. 本文用的是em元素, 当然, 如果你项目中用em比较频繁, 为避免冲突也可以用samp,strong等元素.

当然, 即便用css实现的三角形, 万恶的ie6还是会给你添点麻烦: ie6不支持border-color的transparent值, 怎么办? 为ie6单独写一个border-color值, 然后用chroma滤镜实现透明, 详见代码

代码如下

复制代码

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>

看完整的实例

代码如下

复制代码

<style>

#demo{background:#047}

.triangle{margin:20px}

.round{margin:0 20px}

.box{padding:10px;background:#cf6;font-size:36px; text-align:center;line-height:80px}

/*round*/

.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{height:1px}

.r_b, .r_c, .r_d{background:#cf6}

.r_a {margin:0 5px}

.r_b {margin:0 3px; border-width:0 2px}

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...