Атрибуты HTML | HTML | CodeBasics
Разметка информации на странице включает в себя множество тонкостей и нюансов. Например, можно задавать не только тип элемента, но и передавать дополнительную информацию, которая будет обработана браузером. Наведите курсор на текст ниже:
Наведите курсор мыши на эту строку текста. Лучше сделать это с компьютера
При наведении мыши на элемент появилось небольшое окно с текстом «Всплывающая подсказка. Здесь можно указать дополнительную информацию». Такое поведение задаётся с помощью атрибутов — специальных конструкций, которые могут влиять на вывод информации на странице. Каждый тег в HTML имеет несколько стандартных атрибутов, которые записываются по шаблону атрибут="значение"
, где:
- Атрибут — название атрибута. Для появления всплывающей подсказки использовался атрибут
title
- Значение — значение атрибута.
Разметка примера со всплывающей подсказкой:
<p title="Всплывающая подсказка. Здесь можно указать дополнительную информацию">Наведите курсор мыши на эту строку текста. Лучше сделать это с компьютера</p>
Атрибут title
можно использовать не только на параграфах, а на любом элементе страницы. Такие атрибуты называются глобальными, так как не зависят от элемента. В противовес им есть атрибуты, которые уникальны для одного или нескольких тегов. Например, атрибут colspan
Атрибуты могут неявно влиять на вывод информации. Например, при использовании языка стилей CSS, встречается атрибут class
, задача которого — отделить похожие элементы друг от друга с помощью значения атрибута. О работе классов вы узнаете из курса по CSS, а сейчас важно знать, что этот атрибут никак не проявляет себя при выводе информации на страницу
<p>Параграф с классом lead</p> <p>Параграф с классом mega-paragraph</p>
У одного тега может быть указано сразу несколько атрибутов. Тогда они записываются последовательно, при этом порядок указания не имеет значения:
<p title="Этот элемент имеет несколько атрибутов">Параграф с несколькими атрибутами</p>
В этом уроке мы изучили понятие атрибута и их запись. Изучили работу атрибутов title
и class
, а также узнали о том, что атрибуты бывают глобальные и уникальные для HTML-элементов. Глобальные атрибуты могут быть использованы для любого тега, тогда как уникальные только для определённых
Задание
Создайте параграф с произвольным текстом и всплывающей подсказкой. Добавьте к нему класс hexlet
- Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Это нормально 🙆, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.
В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Прочитал урок — ничего не понятно 🙄Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.
Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.
Полезное
←Предыдущий
Следующий→
Нашли ошибку? Есть что добавить? Пулреквесты приветствуются https://github.com/hexlet-basics
Howto use tooltip with javascript and css3
Дата и время публикации:
1. Что это такое
Всплывающая подсказка удобное средство, чтобы снабдить кратким описанием посетителей на странице HTML, например указать, что делает та или иная ссылка с использованием атрибута «title» или элемента SPAN через каскадные таблицы CSS3, как иллюстрирует листинге 1.
Листинг 1.1
<a href="#" title="Инструкции для дальнейших действий" >ссылки с подсказкой</a>
2. Использование каскадных таблиц CSS3
2.1 Простота использования
Данный способ позволяет получить всплывающую подсказкуДа-Да – это всплывающая подсказка, вид которой можно привести в соответствие с дизайном страницы HTML. При этом её легко можно встраивать в текст предложения в виде контейнера – видимого читателю текст и скрытый, содержащий текст подсказки, как показано в листинге 2.1.
Листинг 2.1
<p>Данный способ позволяет получить <span>всплывающую подсказку <span>Да-Да – это всплывающая подсказка </span></span> . . . </p>
При этом, потребуется использовать два тега span и соответствующие классы каскадных таблиц:
2.2 Класс tooltip
Отвечает за оформление видимой части контейнера, как показано в листинге 2. 2.1
Листинг 2.2.1
.tooltip { position: relative; /* метод отображения текста – отн. места вставки */ display: inline-block; /* с возможностью обтекания окружающие его элементами */ border-bottom: 1px dotted #004655; /* c выделением подчеркиванием пунктирной линией и */ cursor: pointer; /* и изменением курсора на указатель при наведении "мышки" */ }
В тоже время, не на всех устройствах существует возможность наведения указателя. Особенно, если идет речь о речевых браузерах и синтезаторах или устройствах, основанных на системе Брайля, для пользователей с ограниченной функцией слуха, или о планшетах и смартфонах, в которых он просто отсутствует за ненадобностью. Поэтому для того рода устройств в классе tooltip делаем настройки курсора по-умолчанию при помощи запроса @media, как показано в листинге 2.2.2 .
Листинг 2.2.2
@media screen and (max-device-width: 1024px) { . tooltip {pointer: default;} /* делаем курсор по умолчанию там, где */ /* его невозможно будет увидеть */ }
2.3 Класс tooltiptext
Как следует из листинга 2.3, данный класс «играет» только вместе с классом tooltip и придает форму и оформление всплывающей подсказки
Листинг 2.3
.tooltip .tooltiptext { visibility: hidden; /* Снимаем видимость, пока не заиграет селектор */ width: auto; /* при наведении пользователем курсора. Разрешаем */ background-color: #004655; /* в динамике менять размер и устанавливаем цвет */ color: #E6FFFB; /* текста и фона. */ text-align: center; /* Выравниваем по центру текст всплывающей подсказки,*/ border-radius: 6px; /* округляем углы рамки, */ padding: 5px 0; /* Устанавливаем внутренний отступ текста от края */ position: absolute; /* рамки подсказки и позицианируемся от края контейнера */ z-index: 1; /* с отображением наложением вторым слоем */ bottom: 125%; /* Задаем в процентах, положение элемента отн.края родителя */ left: 50%; /* и центрируем его в следующих двух строчках. */ margin-left: -50%; opacity: 0; /* устанавливаем начальную прозрачность и */ transition: opacity 2s; /* время затенения, которое установлено в селекторе */ -webkit-transition: opacity 5s; /* псевдокласса ":hover", а так же */ -moz-transition: opacity 5s; /* различные интерпретации для совместимости */ -o-transition: opacity 5s; /* c другими браузерами */ }
2.4 Псевдоклассы :hover и :after
Оба псевдоклассы позволяют «вызывать» подсказку в контейнер при наведении курсора (:hover) и придание ей формы после отображения (:after). Соответственно, их определение представлено в листингах 2.4.1 и 2.4.2
Листинг 2.4.1
/* Псевдокласс "играет" после отображения подсказки */ .tooltip .tooltiptext::after { content: ""; /* За счет применения свойств позиционирования */ position: absolute; /* и вставки содержимого подсказке обретает */ top: 100%; /* красивую форму. */ left: 50%; margin-left: -1%; border-width: 5px; border-style: solid; border-color: #004655 transparent transparent transparent; }
Листинг 2.4.2
/* Псевдокласс "играет" после отображения подсказки */ .tooltip .tooltiptext::after { content: ""; /* За счет применения свойств позиционирования */ position: absolute; /* и вставки содержимого подсказке обретает */ top: 100%; /* красивую форму. */ left: 50%; margin-left: -1%; border-width: 5px; border-style: solid; border-color: #004655 transparent transparent transparent; }
3. Библиография
1) How to Add a Tooltip in HTML
2) How TO – Tooltip
3) Tooltip with HTML content without JavaScript
4) Creating tooltips using the title attribute of HTML
5) Использование CSS переходов
6) Медиа-запросы
7) transition
8) Селекторы псевдоклассов и псевдоэлементов в CSS (hover, first-child, first-line и другие), отношения между тегами Html кода
html — Добавить текст при наведении без javascript, как мы наводим на репутацию пользователя
спросил
Изменено 2 года назад
Просмотрено 430 тысяч раз
В stackoverflow, когда мы наводим курсор на репутацию пользователя, мы видим текст. Я видел это во многих местах, и исходный код говорит мне, что это можно сделать без js. А я пробовал и получил только это-
наведите курсор
- html
- hover
Используйте атрибут title
, например:
hover me
or:
наведите меня
9
Атрибут title также хорошо работает с другими элементами html, например со ссылкой…
ссылка для скачивания
Часто в этой ситуации я использую аббревиатуру html-тега.
Текст
https://www.w3schools.com/tags/tag_abbr.asp
1
Вы ищете всплывающую подсказку
Для основной всплывающей подсказки вам нужно:
Для более сложной версии javascript вы можете посмотреть:
http://www. designer-daily.com/jquery-prototype-mootool-tooltips-12632
Приведенная выше ссылка дает вам 12 вариантов всплывающих подсказок.
Это также можно сделать в CSS для большей настраиваемости:
.hoverable { положение: родственник; } .hoverable> .hoverable__tooltip { дисплей: нет; } .hoverable:hover>.hoverable__tooltip { дисплей: встроенный; положение: абсолютное; верх: 1эм; слева: 1эм; фон: #888; граница: 1px сплошной черный; }<дел> Основной текст Текст при наведении
(Очевидно, стиль можно улучшить)
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя адрес электронной почты и пароль
Опубликовать как гость
Электронная почта
Требуется, но никогда не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Как определить текст всплывающей подсказки в CSS?
Я хотел бы, чтобы текст всплывающей подсказки полностью определялся CSS, а не в части динамического html моего приложения, чтобы стиль и код могли быть полностью разделены (я считаю, что сообщения всплывающей подсказки могут быть проблемой отдела UX или, по крайней мере, стороннего пользователя, и ему не нужно вмешиваться в код, генерирующий JavaScript, для внесения изменений во всплывающую подсказку).
Ожидается, что следующий код не будет полностью работать, но он вообще не работает:
<стиль> .подсказка { положение: родственник; отображение: встроенный блок; нижняя граница: 1 пиксель с черными точками; } .tooltip .tooltiptext { видимость: скрытая; ширина: 120 пикселей; цвет фона: черный; цвет: #fff; выравнивание текста: по центру; радиус границы: 6px; отступ: 5px 0; /* Размещение всплывающей подсказки */ положение: абсолютное; z-индекс: 1; } .всплывающая подсказка: после { содержимое: "foo bar"; } .tooltip: hover .tooltip: после { видимость: видимая; } стиль> <тело>Наведите указатель мыши на текст ниже:
Наведите курсор на менятело>
В частности, хотя я определил содержимое после, оно не отображается при наведении:
.tooltip:after { содержимое: "foo bar"; } .tooltip: hover .tooltip: после { видимость: видимая; }
Для справки, это было изменено из примера w3schools
Не уверен, что этот старый ответ все еще применим, поскольку он может предшествовать псевдоэлементам: всплывающие подсказки, только CSS, показывать текстовую подсказку при наведении указателя мыши с использованием класса для определения текста
там вы идете:
. подсказка { положение: родственник; отображение: встроенный блок; нижняя граница: 1 пиксель с черными точками; } .всплывающая подсказка: после { содержимое: "foo bar"; положение: абсолютное; верх: -30px; справа: 0; слева: 0; дисплей: нет; выравнивание текста: по центру; цвет фона: #000; цвет: #fff; радиус границы: 4px; отступ: 2px; } .tooltip: hover: после { дисплей: блок; }
Наведите указатель мыши на текст ниже:
Наведите курсор на меня
если вы хотите изменить положение/вид самой всплывающей подсказки, измените стиль этой части: .tooltip:after {}
2
Я полагаю, что ваша проблема заключается в следующем селекторе:
.tooltip:hover .tooltip:after
Этот селектор CSS применяется к элементу с классом ‘tooltip’, который находится внутри родительского элемента, который также имеет класс ‘подсказка’.