首页 > 开发 > CSS > 正文

空心三角形的简单实现(必看篇)

2024-07-11 08:32:29
字体:
来源:转载
供稿:网友

背景: 项目过程中有个tab切换需要用到空心三角形的效果。作为一名后端工程师,实在是不知道怎么写,在网上找了一些看了一下别人的实现方式,发现大多数都是实心三角。后来终于发现一个实现空心三角的,顿时热泪盈眶啊。实现效果比较粗略,不过还是思路还是比较清晰的,借鉴了一下,在原有的基础上做了一些改进,增加一些效果

空心三角原理:主要利用元素伪类(:before,:after)实现

效果图:

 

ps:移入换色

实现代码:

CSS Code复制内容到剪贴板
  1. <style>    #talkbubble {   
  2. width: 120px;    height: 80px;   
  3. position: relative;    -moz-border-radius: 10px;   
  4. -webkit-border-radius: 10px;    border-radius: 10px;   
  5. border: 1px #808080 solid;    background-color: #fff;   
  6. }      
  7. #talkbubble:before {    content: " ";   
  8. position: absolute;    top: 100%;   
  9. left: 50px;    width: 0;   
  10. height: 0;    border-left: 15px solid transparent;   
  11. border-top: 15px solid #808080;    border-right: 15px solid transparent;   
  12. }      
  13. .inlayer:after {    content: " ";   
  14. position: absolute;    top: 100%;   
  15. left: 51px;    width: 0;   
  16. height: 0;    border-left: 14px solid transparent;   
  17. border-top: 14px solid #fff;    border-right: 14px solid transparent;   
  18. }      
  19. #talkbubble:hover {    background-color: #ff0000;   
  20. }      
  21. .inlayer:hover:after {    width: 0;   
  22. height: 0;    border-left: 14px solid transparent;   
  23. border-top: 14px solid #ff0000;    border-right: 14px solid transparent;   
  24. }    </style>   
  25.    <!-- html -->   
  26. <div id="talkbubble" class="inlayer">    空心三角形   
  27. </div>   
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表