纯CSS实现的帮助提示信息效果

csstooltip.jpg

我们在网页上有时会针对一些内容做详细说明,以便更友好的服务用户。最常见的是在网站上加个用户使用帮助,但是一般需要跳转页面。今天我给大家介绍只需将鼠标滑向一个小问号上,就会出现帮助提示信息的效果。

其实本文要分享的就是我们常见到的提示信息工具tooltip,它能够为我们的页面提供非常漂亮的提示信息,让内容更加直观,提升用户的体验。我们可以在网上查到很多关于tooltip的文章,大多数是提供基于javascript的插件,而本文我们要讲的是一个只需要CSS代码,无需任何插件就能实现的漂亮、简单、使用的信息提示Tooltip。

HTML

首先第一步我们准备提示工具的提示内容html结构:

折叠XML/HTML 代码
  1. <div class="help-tip">   
  2.     <p>这是一个纯CSS制作,基于CSS3实现的提示信息效果。</p>   
  3. </div>   

代码<p>中的内容将作为一个块展示提示信息,而.help-tip将会包含一个带问号的小圆圈效果。

代码<p>中的内容默认是不显示的,当鼠标滑向问号时,通过CSS才能展示提示信息,它可以包含文字、图片、链接等各种html代码。具体可以看演示DEMO。

CSS

所有的CSS都写在一个style.css文件中,大家可以下载文件包查看,下面介绍下主要核心的CSS代码:

折叠CSS 代码
  1. .help-tip{   
  2.     positionabsolute;   
  3.     top18px;   
  4.     rightright18px;   
  5.     text-aligncenter;   
  6.     background-color#BCDBEA;   
  7.     border-radius: 50%;   
  8.     width24px;   
  9.     height24px;   
  10.     font-size14px;   
  11.     line-height26px;   
  12.     cursordefault;   
  13. }   
  14.    
  15. .help-tip:before{   
  16.     content:'?';   
  17.     font-weightbold;   
  18.     color:#fff;   
  19. }   
  20.    
  21. .help-tip:hover p{   
  22.     display:block;   
  23.     transform-origin: 100% 0%;   
  24.    
  25.     -webkit-animation: fadeIn 0.3s ease-in-out;   
  26.     animation: fadeIn 0.3s ease-in-out;   
  27.    
  28. }   
  29.    
  30. .help-tip p{   
  31.     displaynone;   
  32.     text-alignleft;   
  33.     background-color#1E2021;   
  34.     padding20px;   
  35.     width300px;   
  36.     positionabsolute;   
  37.     border-radius: 3px;   
  38.     box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);   
  39.     rightright: -4px;   
  40.     color#FFF;   
  41.     font-size13px;   
  42.     line-height: 1.4;   
  43. }   
  44.    
  45. .help-tip p:before{   
  46.     positionabsolute;   
  47.     content'';   
  48.     width:0;   
  49.     height: 0;   
  50.     border:6px solid transparent;   
  51.     border-bottom-color:#1E2021;   
  52.     rightright:10px;   
  53.     top:-12px;   
  54. }   
  55.    
  56. .help-tip p:after{   
  57.     width:100%;   
  58.     height:40px;   
  59.     content:'';   
  60.     positionabsolute;   
  61.     top:-40px;   
  62.     left:0;   
  63. }   
  64.    
  65. @-webkit-keyframes fadeIn {   
  66.     0% {    
  67.         opacity:0;    
  68.         transform: scale(0.6);   
  69.     }   
  70.    
  71.     100% {   
  72.         opacity:100%;   
  73.         transform: scale(1);   
  74.     }   
  75. }   
  76.    
  77. @keyframes fadeIn {   
  78.     0% { opacity:0; }   
  79.     100% { opacity:100%; }   
  80. }   

代码中使用了CSS3的很多特性,使用了:before伪类创建问号,使用了border-radius: 50%创建问号背后的圆圈,省去了制作图片的麻烦,代码中还是用了css3动画效果,透明度变化等等。

值得注意的是,我们将.help-tip的position设置为absolute,是针对它的父级元素.demo的position属性为relative。这样才能保证元素间的定位。

查看演示
Tags: css   帮助   提示
cms大学,为帝国cms用户提供动力
Copyright © 2016 CmsDX.com All Rights Reserved.