Создать всплывающую подсказку в социальных сетях - PullRequest
0 голосов
/ 07 февраля 2019

Я поместил значки социальных сетей в нижний колонтитул в виде «следуй за мной» раздела.Теперь я хотел бы иметь всплывающую подсказку , как это здесь https://www.w3schools.com/css/tryit.asp?filename=trycss_tooltip_arrow_bottom, где каждый из них будет всплывать с текстом "facebook", "Twitter" и т. Д.

Как сделатьЯ достигаю этого с тем, что у меня уже есть, так как я не хочу портить нижний колонтитул и иконки социальных сетей, пытаясь это сделать.Есть ли способ втиснуть <span class="tooltiptext"> в?Или использовать это как тег id?Я думал о том, чтобы попробовать что-то подобное, например.

<a href="#" class="fa fa-facebook" id="tooltiptext"></a>

Возможно ли это?

Любые советы и рекомендации будут высоко оценены. Не стесняйтесь запустить фрагмент кода, чтобы увидеть, как выглядят мои иконки в социальных сетях.

/* Footer aka a copyright + social media pages */

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  /* Height of the footer */
  background-color: #b3b3ff;
}

.tooltip .tooltiptext {
  width: 120px;
  bottom: 100%;
  left: 50%;
  margin-left: -60px;
  /* Use half of the width (120/2 = 60), to center the tooltip */
}

.fa {
  padding: 20px;
  font-size: 30px;
  width: 50px;
  text-align: center;
  text-decoration: none;
  margin: 5px 2px;
  border-radius: 50%;
}

.fa:hover {
  opacity: 0.7;
}

.fa-facebook {
  background: #3B5998;
  color: white;
}

.fa-twitter {
  background: #55ACEE;
  color: white;
}

.fa-linkedin {
  background: #007bb5;
  color: white;
}

.fa-instagram {
  background: #125688;
  color: white;
}

.fa-snapchat {
  background: #fffc00;
  color: white;
  text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
}
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<div class="footer">
  <div class="tooltip">

    <!-- Now where should I place "tooltiptext" -->

    <a href="#" class="fa fa-facebook"></a>
    <a href="#" class="fa fa-twitter"></a>
    <a href="#" class="fa fa-linkedin"></a>
    <a href="#" class="fa fa-instagram"></a>
    <a href="#" class="fa fa-snapchat"></a>
  </div>
</div>

Ответы [ 2 ]

0 голосов
/ 07 февраля 2019

Вы должны были использовать .tooltip в <a> вместо <div>, который является родителем .tooltiptext

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  /* Height of the footer */
  background-color: #b3b3ff;
}

/* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
  visibility: hidden;
  width: 120px;
  background-color: black;
  color: #fff;
  text-align: center;
  padding: 5px 0;
  border-radius: 6px;
 
  /* Position the tooltip text - see examples below! */
  position: absolute;
 bottom: 100%;
  left: 50%; 
  margin-left: -60px; /* Use half of the width (120/2 = 60), to center the tooltip */
  z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
}

.fa {
  padding: 20px;
  font-size: 30px;
  width: 50px;
  text-align: center;
  text-decoration: none;
  margin: 5px 2px;
  border-radius: 50%;
}

.fa:hover {
    opacity: 0.7;
}

.fa-facebook:hover .tooltiptext {
  background: #3B5998;
  color: white;
  visibility: visible;
}

.fa-twitter {
  background: #55ACEE;
  color: white;
}

.fa-linkedin {
  background: #007bb5;
  color: white;
}

.fa-instagram {
  background: #125688;
  color: white;
}

.fa-snapchat {
  background: #fffc00;
  color: white;
  text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
}
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Homepage</title>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  <link rel="stylesheet" type="text/css" href="main.css">
  <script src="script.js"></script>
</head>

<body>
  
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
    <div class="footer">
      <div>
        <!-- Now where should I place "tooltiptext" -->
        <a href="#" class="fa fa-facebook tooltip"><span class="tooltiptext">Facebook</span></a>
        <a href="#" class="fa fa-twitter tooltip"><span class="tooltiptext">Twitter</span></a>
        <a href="#" class="fa fa-linkedin tooltip"><span class="tooltiptext">Linkedin</span></a>
        <a href="#" class="fa fa-instagram tooltip"><span class="tooltiptext">Instagram</span></a>
        <a href="#" class="fa fa-snapchat tooltip"><><span class="tooltiptext">Snapchat</span></a>
      </div>
    </div>
  
</body>
</html>
0 голосов
/ 07 февраля 2019

Я попытался добавить следующее в ваш код и работает:

  1. Добавить видимость: скрыто в вашей подсказке в css
.tooltip .tooltiptext {
 visibility: hidden;
 width: 120px;
 bottom: 100%;
 left: 50%;
 margin-left: -60px;
 /* Use half of the width (120/2 = 60), to center the tooltip */
}
В css объявляйте видимость всплывающей подсказки при каждом наведении на ссылку.Попробуйте сделать это для всех ваших ссылок.
.fa-facebook:hover .tooltiptext {
 visibility: visible;
}
Добавление элемента с подсказкой в ​​элементе в html.
   <a href="#" class="fa fa-facebook">
       <span class="tooltiptext">Facebook</span>
    </a>
...