CSS3绘制三角形,并实现翻转效果
2016-10-21 10:46
603 查看
首先,如何用CSS3来绘制三角形,下面介绍了四种朝向三角形的写法:
CSS样式设计:
那如何使三角形实现180度的翻转呢:
给.triangle添加一个hover伪类,利用transform实现180度的翻转,利用transition实现过渡的效果。
这里也添加了一些解决兼容性的方法,但对于IE6,7,8的问题暂且不提。
transition方法,ease-in规定是以“规定以慢速开始的过渡效果”,并且时间是0.2秒。
整体代码如下所示:(朝下的三角形翻转朝上)
<div class="triangle"> </div>
CSS样式设计:
.triangle { width:0; height:0; overflow:hidden; /*朝上的三角形*/ border-left:6px solid transparent; border-right:6px solid transparent; border-bottom:6px solid #118a11; /*朝下的三角形*/ border-left:6px solid transparent; border-right:6px solid transparent; border-top:6px solid #118a11; /*朝左的三角形*/ border-right:6px solid #118a11; border-top:6px solid transparent; border-bottom:6px solid transparent; /*朝右的三角形*/ border-left:6px solid #118a11; border-top:6px solid transparent; border-bottom:6px solid transparent; }需要什么朝向的三角形,就将其他朝向的三角形进行注释,就可以使用。
那如何使三角形实现180度的翻转呢:
.triangle:hover { -ms-transform:rotate(180deg); /* IE 9 */ -moz-transform:rotate(180deg); /* Firefox */ -webkit-transform:rotate(180deg); /* Safari 和 Chrome */ -o-transform:rotate(180deg); /* Opera */ transform:rotate(180deg); -webkit-transition: -webkit-transform 0.2s ease-in; /* Safari 和 Chrome */ -moz-transition:-moz-transform 0.2s ease-in; /* Firefox */ -o-transition:-o-transform 0.2s ease-in; /* Opera */ transition:transform 0.2s ease-in; }
给.triangle添加一个hover伪类,利用transform实现180度的翻转,利用transition实现过渡的效果。
这里也添加了一些解决兼容性的方法,但对于IE6,7,8的问题暂且不提。
transition方法,ease-in规定是以“规定以慢速开始的过渡效果”,并且时间是0.2秒。
整体代码如下所示:(朝下的三角形翻转朝上)
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <style> .triangle { width:0; height:0; overflow:hidden; /*朝下的三角形*/ border-left:6px solid transparent; border-right:6px solid transparent; border-top:6px solid #118a11; } .triangle:hover { -ms-transform:rotate(180deg); /* IE 9 */ -moz-transform:rotate(180deg); /* Firefox */ -webkit-transform:rotate(180deg); /* Safari 和 Chrome */ -o-transform:rotate(180deg); /* Opera */ transform:rotate(180deg); -webkit-transition: -webkit-transform 0.2s ease-in; /* Safari 和 Chrome */ -moz-transition:-moz-transform 0.2s ease-in; /* Firefox */ -o-transition:-o-transform 0.2s ease-in; /* Opera */ transition:transform 0.2s ease-in; } </style> </head> <body> <div class="triangle"> </div> </body> </html>
相关文章推荐
- css3 实现纸带翻转效果
- CSS3实现翻转菜单效果
- 小莫的成神之旅(二)纯css3实现翻转效果
- CSS3实现三角形效果
- css3实现色子自动翻转效果
- CSS绘制小三角形效果实现&扩展
- CSS3 实现导航菜单的 3D 翻转动画效果
- CSS3实现翻转(Flip)效果
- 利用CSS3如何实现翻转卡牌效果?
- CSS3实现徽章翻转效果
- css3实现图片3d翻转效果
- CSS3实现翻转(Flip)效果
- css3实现色子自动翻转效果
- CSS3 animate实现图片墙3D翻转效果
- 分享一个CSS3和jQuery实现的模糊显示效果 - 帮助你的访问用户更好的阅读内容
- CSS3target伪类元素选择实现类似灯箱效果
- jquery使用CSS3实现文字动画效果插件Textillate.js
- 用CSS3实现带小三角形的div框(不用图片)
- 使用Jquery,CSS3实现像GooglePlus那样的圆圈效果
- css3效果:animate实现点点点loading动画效果(二)