用css实现tooltip效果

本文是下记练习中,用css实现tooltip效果的总结。

tooltip.jpg

CSS实现tooltip效果,主要分为两个方向:
1、通过设置box的before伪元素,width、height为0,然后用boder设置一个四个三角形组成的正方形,再用css3的rotate属性进行旋转。最后通过父元素的relative定位,子元素的absolute定位偏移即可完成。

  • 好处:标签少,可以单独设置4个三角形的颜色。
通过border+rotate创建
效果图

我是Demo,快戳我~~


2、通过设置box的before伪元素,设置一定的宽高(比如10px),然后旋转这个小正方形,再用relative+absolute的定位偏移该正方形,得到我们要的箭头。
优点:标签少
缺点:小箭头的三角形颜色必须和外面包裹box的背景颜色相同,因为无法单独设置每个小三角形的颜色。

无法单独设置三角形的颜色

我是Demo,快戳我~~


3、通过在box的上方设置一个span标签,与方法1相同,用border+定位来形成这个小三角形。
优点:代码量少。不需要使用旋转属性
缺点:需要多使用一个标签。

通过span标签设置

我是Demo,快戳我~~


4、用一个before伪元素来代替span标签(推荐方法!)
特点:标签少、不使用旋转功能。


用before伪元素代替span标签

我是Demo,快戳我~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,854评论 1 92
  • 各种纯css图标 CSS3可以实现很多漂亮的图形,我收集了32种图形,在下面列出。直接用CSS3画出这些图形,要比...
    剑残阅读 9,731评论 0 8
  • 1.行内元素和块级元素?img算什么?行内元素怎么转化为块级元素? 行内元素:和有他元素都在一行上,高度、行高及外...
    极乐君阅读 2,511评论 0 20
  • 高谷低谷看人生 曾经有一个演员在公开课上讲到:上山的人永远不要看不起下山的人,因为他们曾经风光过,上山的人不要看不...
    牧夫寻牛阅读 149评论 0 0
  • 如果一段感情总让你难受,不要陷在泥潭里挣扎,那种滋味不好受,已经品尝过。 嗯,会有点难过,但带病前行更难,如果想未...
    好菇凉啊光芒万丈阅读 145评论 0 0