Как показать подсказку по умолчанию, не зависая в чистом CSS - PullRequest
0 голосов
/ 25 июня 2018

У меня есть всплывающая подсказка, которая будет работать при наведении курсора на элемент div,

Мне нужно показать всплывающую подсказку по умолчанию при обновлении страницы .

Как мне добиться этого в чистом CSS?Мне здесь не нужны никакие javascript-файлы.Любая идея, чтобы заставить его работать только с CSS?

Я пытался удалить display: block; из tooltip:before, но ни один из них не сработал.

.toolwrapper {
  color: #555;
  cursor: help;
  font-family: Arial;
  font-size: 12px;
  margin: 40px 64px 9px 4px;
  padding: 15px 20px;
  position: relative;
  text-align: center;
  width: 100%;

}

.toolwrapper .tooltip {
  background: #424242;
  bottom: 100%;
  color: #fff;
  display: block;
  left: 0;
  opacity: 0;
  padding: 10px;
  pointer-events: none;
  position: absolute;
  width: 100%;
  -webkit-transform: translateY(10px);
     -moz-transform: translateY(10px);
      -ms-transform: translateY(10px);
       -o-transform: translateY(10px);
          transform: translateY(10px);
  -webkit-transition: all .25s ease-out;
     -moz-transition: all .25s ease-out;
      -ms-transition: all .25s ease-out;
       -o-transition: all .25s ease-out;
          transition: all .25s ease-out;
  -webkit-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
     -moz-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
      -ms-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
       -o-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
          box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
}

/* This bridges the gap so you can mouse into the tooltip without it disappearing */
.toolwrapper .tooltip:before {
  bottom: -20px;
  content: " ";
  display: block;
  height: 20px;
  left: 0;
  position: absolute;
  width: 100%;
}  


.toolwrapper .tooltip:after {
  border-left: solid transparent 10px;
  border-right: solid transparent 10px;
  border-top: solid #424242 10px;
  bottom: -10px;
  content: " ";
  height: 0;
  left: 80%;
  margin-left: -13px;
  position: absolute;
  width: 0;
}
  
.toolwrapper:hover .tooltip {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateY(0px);
     -moz-transform: translateY(0px);
      -ms-transform: translateY(0px);
       -o-transform: translateY(0px);
          transform: translateY(0px);
}
<div class="toolwrapper">
               Hover me to show tooltip
              <div class="tooltip">Hi I'm tooltip</div>
            </div> 

Ответы [ 2 ]

0 голосов
/ 25 июня 2018

Добавить opacity: 1 во всплывающую подсказку

.toolwrapper {
  color: #555;
  cursor: help;
  font-family: Arial;
  font-size: 12px;
  margin: 40px 64px 9px 4px;
  padding: 15px 20px;
  position: relative;
  text-align: center;
  width: 100%;

}

.toolwrapper .tooltip {
  background: #424242;
  bottom: 100%;
  color: #fff;
  display: block;
  left: 0;
  opacity: 1 !important;
  padding: 10px;
  pointer-events: none;
  position: absolute;
  width: 100%;
  -webkit-transform: translateY(0px);
     -moz-transform: translateY(0px);
      -ms-transform: translateY(0px);
       -o-transform: translateY(0px);
          transform: translateY(0px);
  -webkit-transition: all .25s ease-out;
     -moz-transition: all .25s ease-out;
      -ms-transition: all .25s ease-out;
       -o-transition: all .25s ease-out;
          transition: all .25s ease-out;
  -webkit-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
     -moz-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
      -ms-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
       -o-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
          box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
}

/* This bridges the gap so you can mouse into the tooltip without it disappearing */
.toolwrapper .tooltip:before {
  bottom: -20px;
  content: " ";
  display: block;
  height: 20px;
  left: 0;
  position: absolute;
  width: 100%;
}  


.toolwrapper .tooltip:after {
  border-left: solid transparent 10px;
  border-right: solid transparent 10px;
  border-top: solid #424242 10px;
  bottom: -10px;
  content: " ";
  height: 0;
  left: 80%;
  margin-left: -13px;
  position: absolute;
  width: 0;
}
  
.toolwrapper:hover .tooltip {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateY(0px);
     -moz-transform: translateY(0px);
      -ms-transform: translateY(0px);
       -o-transform: translateY(0px);
          transform: translateY(0px);
}
<div class="toolwrapper">
   Hover me to show tooltip
  <div class="tooltip">Hi I'm tooltip</div>
</div>
0 голосов
/ 25 июня 2018

Вам просто нужно изменить opacity с 0 на 1 в самом классе всплывающей подсказки, так как установка его в 0 делает его невидимым.

.toolwrapper .tooltip {
    opacity: 1;
}
...