BloGGood.ru

Блог Костаневича Степана

До Нового Года осталось:

Блог на разные темы, seo-оптимизация, раскрутка сайта, создание сайта, вкусные эффекты для сайта и многое другое…

Главная » Рецепты CSS » Всплывающие подсказки CSS

Всплывающие подсказки CSS

2014-07-03 / Вр:15:15 / просмотров: 7566

Перед началом создания всплывающей подсказки на CSS давайте уточним, что это такое и как она выглядит без оформления.

Всплывающая подсказка – это текст, который появляется при наведении курсора мышки на ссылку или на картинку.  Подсказка будет появляться в том случае, если в атрибуте title содержится описание:

<a href="http://bloggood.ru/raznye-temy/" title="Разные темы">Разные темы</a>

Результат неоформленной всплывающей подсказки (пример на ссылке):

Всплывающие подсказки CSS

<img src="images/jyl-vern-1.jpg" width="220" height="291" title="ЖюльВерн">

Результат неоформленной всплывающей подсказки (пример на картинке):

Всплывающие подсказки CSS

К сожаленью, не всегда и не везде можно оформить стиль всплывающей подсказки к тегу title. Но выход существует и следующие примеры тому доказательство.

⇒ Оформление всплывающей подсказки для ссылок

Всплывающая подсказка будет выводиться сверху.  Пример:

Всплывающие подсказки CSS

Итак, в HTML файле пропишите вот такой код:

<br><br><br>
<a href="http://bloggood.ru/" title="Текст подсказки." class="bloggood-ru-podskazka">Ссылка</a>

а в CSS вот такой:

 

.bloggood-ru-podskazka{
    display: inline;
    position: relative;
}
.bloggood-ru-podskazka:hover:after{
    background: #000;
    border-radius: 5px;
    bottom: 26px;
    color: #fff;
    content: attr(title); /* Выводим текст всплывающей подсказки*/
    left: 20%;
    padding: 5px 15px;
    position: absolute;
    z-index: 98;
    width: auto;
}
.bloggood-ru-podskazka:hover:before{
    border: solid;
    border-color: #000 transparent;
    border-width: 6px 6px 0 6px;
    bottom: 20px;
    content: "";
    left: 50%;
    position: absolute;
    z-index: 99;
}

Вы заметили, что вместе с оформленной всплывающей подсказкой вылезает и неоформленная. Чтобы убрать неоформленную подсказку, замените «title» на другое название, например «bloggood-ru».

В HTML

<br><br><br>
<a href="http://bloggood.ru/" bloggood-ru="Текст подсказки." class="bloggood-ru-podskazka">Ссылка</a>

В CSS заменить строку 10 на вот эту:

content: attr(bloggood-ru); /* Выводим текст всплывающей подсказки*/

Вот так это будет выглядеть в CSS:

.bloggood-ru-podskazka{
    display: inline;
    position: relative;
}
.bloggood-ru-podskazka:hover:after{
    background: #000;
    border-radius: 5px;
    bottom: 26px;
    color: #fff;
    content: attr(bloggood-ru); /* Выводим текст всплывающей подсказки*/
    left: 20%;
    padding: 5px 15px;
    position: absolute;
    z-index: 98;
    width: auto;
}
.bloggood-ru-podskazka:hover:before{
    border: solid;
    border-color: #000 transparent;
    border-width: 6px 6px 0 6px;
    bottom: 20px;
    content: "";
    left: 50%;
    position: absolute;
    z-index: 99;
}

Результат:

Всплывающие подсказки CSS

⇒ Всплывающая подсказка для текста, которая будет выводиться снизу.
Пример:

Всплывающие подсказки CSS

в HTML файле пропишите вот такой код:

<br><br><br>
<span class="bloggood-ru-podskazka">Текст<span class="classic">Текст подсказки</span></span>

в CSS вот такой:

.bloggood-ru-podskazka {
  position: relative;
  cursor: help;
}
.bloggood-ru-podskazka span {
  position: absolute;
  margin-left: -30000px;
  background-color: #000;
  color: #fafafa;
  padding:10px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -khtml-border-radius: 5px;
  border-radius: 5px;
}
.bloggood-ru-podskazka:hover span {
  margin-left: 0;
  width: 250px;
  z-index: 1000;
  top:30px;
  left:20px;
}
.bloggood-ru-podskazka span:after{
  content: '';
  width:0;
  height:0;
  border-bottom: 10px solid #000;
  border-right: 10px solid transparent;
  position: absolute;
  top:-10px;
  left:10px;
}

⇒ Всплывающая подсказка для картинки, которая будет выводиться снизу.
Пример:

Всплывающие подсказки CSS

В HTML

<div class="image" title="Текст подсказки."><img src="pirelli-zasvet-02.JPG"></div>

в CSS:

.image {
    display: inline-block;
    position: relative;
   }
   .image:hover::after {
    content: attr(title); /* Выводим текст всплывающей подсказки*/
    position: absolute;
    left: 0; right: 0; bottom: 0px;
    z-index: 1;
    background: rgba(0,255,102,0.6);
    color: #fff;
    text-align: center;
    font-family: Arial, sans-serif;
    font-size: 14px; /* Размер текста подсказки */
    padding: 5px 10px;
    border: 1px solid #333;
   }

Вы заметили, что вместе с оформленной всплывающей подсказкой вылезает и неоформленная. Это не красиво.
По этой причине предлагаю убрать, а точнее заменить, «title» на другое название, например, «bloggood-ru».

В HTML

<div class="image" bloggood-ru="Текст подсказки."><img src="kartinka.JPG"></div>

В CSS заменить строку 6 на вот эту

content: attr(bloggood-ru); /* Выводим текст всплывающей подсказки*/

Вот так это будет выглядеть в CSS:

.image {
    display: inline-block;
    position: relative;
   }
   .image:hover::after {
    content: attr(bloggood-ru); /* Выводим текст всплывающей подсказки*/
    position: absolute;
    left: 0; right: 0; bottom: 0px;
    z-index: 1;
    background: rgba(0,255,102,0.6);
    color: #fff;
    text-align: center;
    font-family: Arial, sans-serif;
    font-size: 14px; /* Размер текста подсказки */
    padding: 5px 10px;
    border: 1px solid #333;
   }

Результат:

Всплывающие подсказки CSS

Внимание, результаты как это работает можете посмотреть здесь
[посмотреть все примеры]

Удачи вам!!! :arrow:

Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓

Получай обновления блога!!! Подпишись:

Популярные статьи:

Добавить комментарий

;-) :| :x :twisted: :smokes: :smile: :shock: :sad: :rose: :roll: :razz: :pop-corne: :oops: :o :mrgreen: :lol: :idea: :grin: :gazeta: :evil: :cry: :cool: :coffe: :arrow: :???: :?: :!:

Чтобы добавить в комментарий код HTML, PHP, CSS, JavaScript, нужно сделать так: [code] ваш код [/code]

Subscribe without commenting

Метки:

Мои цели на 2017 год:

1). Закончить тему «Bootstrap»

2). Закончить тему «Все про PHP и MySQL»

3). Довести количество статей до 750

4). Создать портфолио и мини интернет-магазин шаблонов

5). Создать книгу

6). Довести количество статей до 800

7). Добиться посещаемости 3000 человек/сутки

8). Увеличить число подписчиков до 250

Статистика по блогу

Количество записей на блоге: 787
Количество страниц на блоге: 20
Количество рубрик на блоге: 28
Количество меток на блоге: 72
Количество комментариев на блоге: 4386