web-dev-qa-db-fra.com

Info-bulle avec un triangle

J'ai créé un jsFiddle pour cette question.

a.tip {
    position: relative;
}

a.tip span {
    display: none;
    position: absolute;
    top: -5px;
    left: 60px;
    width: 125px;
    padding: 5px;
    z-index: 100;
    background: #000;
    color: #fff;
    -moz-border-radius: 5px; /* this works only in camino/firefox */
    -webkit-border-radius: 5px; /* this is just for Safari */
}

a:hover.tip {
    font-size: 99%; /* this is just for IE */
}

a:hover.tip span {
    display: block;
}
        
<center><a href="http://google.com/" class="tip">Link!<span>Hi its me!</span></a></center>

Fondamentalement, j'ai une info-bulle sur mon site, et elle apparaît à droite de mon lien. Mais sur le côté gauche de la boîte noire, je voudrais un triangle attaché à la boîte pointant vers le lien, est-il possible de le faire en utilisant uniquement CSS? juste comme ça mais à gauche

tooltip with arrow

27
Awilson089

Vous pouvez le faire avec CSS, en utilisant astuce css triangle

a.tip span:before{
    content:'';
    display:block;
    width:0;
    height:0;
    position:absolute;

    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-right:8px solid black;
    left:-8px;

    top:7px;
}

Démo sur http://jsfiddle.net/dAutM/7/


extrait en direct

a.tip {
  position: relative;
}

a.tip span {
  display: none;
  position: absolute;
  top: -5px;
  left: 60px;
  width: 125px;
  padding: 5px;
  z-index: 100;
  background: #000;
  color: #fff;
  -moz-border-radius: 5px;
  /* this works only in camino/firefox */
  -webkit-border-radius: 5px;
  /* this is just for Safari */
}

a.tip span:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-right: 8px solid black;
  left: -8px;
  top: 7px;
}

a:hover.tip {
  font-size: 99%;
  /* this is just for IE */
}

a:hover.tip span {
  display: block;
}
<center><a href="http://google.com/" class="tip">Link!<span>Hi its me!</span></a></center>
40
Gabriele Petrioli

J'ai développé CSStooltip.com pour faire des info-bulles avec triangle en CSS uniquement.

Exemple :

enter image description here

span.tooltip:after {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      border-width: 10px;
      border-style: solid;
      border-color: transparent #FFFFFF transparent transparent;
      top: 11px;
      left: -24px;
}
13
GG.

Essayez ceci: http://ecoconsulting.co.uk/examples/css-tooltip/

Il explique les problèmes et résout les problèmes, et permet une flèche et une info-bulle avec une bordure.

3
Dave Everitt

Vous pouvez mettre la couleur et l'image en arrière-plan et également définir sa position. Dans le code ci-dessous, remplacez l'image de la balise url par une image contenant le triangle souhaité.

a.tip span {
    display: none;
    position: absolute;
    top: -5px;
    left: 60px;
    width: 125px;
    padding: 5px;
    z-index: 100;
    background: #000 url("http://www.triangle-fr.com/img/tooltip.png");
    color: #fff;
    -moz-border-radius: 5px; /* this works only in camino/firefox */
    -webkit-border-radius: 5px; /* this is just for Safari */
}

voir plus ici http://www.w3schools.com/cssref/pr_background-position.asp

1
Vassilis Barzokas