SVG hover эффект для кнопки
Вы здесь: Главная — CSS — CSS Основы — SVG hover эффект для кнопки
Формат SVG дает новые возможности для рисования различных фигур и анимирования их. Сегодня мы рассмотрим SVG hover эффект на кнопку. Создадим внешний контейнер с классом button и внутри него поместим тег svg. Внутри парного тега svg будет располагаться тег rest, изображающий прямоугольник без заливки и с позиционированием от верхнего левого угла браузера.
<div>
Hover Me
<svg viewBox="0 0 150 75" xmlns="http://www.w3.org/2000/svg">
<rect x='0' y='0' fill='none'/>
</svg>
</div>//CSS
body {
background-color: #F5F5F5; /* цвет фона страницы */
font-family: sans-serif; /* название шрифта */
}
Стилизация кнопки
.
button {
text-transform: uppercase; /* текст заглавными буквами */
width: 150px; /* ширина кнопки */
height: 75px; /* высота кнопки */
color: #bf360c; /* цвет текста */
text-align: center; /* текст по центру по горизонтали */
line-height: 75px; /* текст по центру по вертикали */
margin: 20px auto; /* внешние отступы у кнопки */
position: relative; /* относительное позиционирование */
cursor: pointer; /* курсор рука */
}
svg {
position: absolute;
position: relative; /* абсолютное позиционирование */
top: 0; /* привязка к верхнему углу */
left: 0; /* привязка к левому углу */
}svg rect {
stroke: #bf360c; /* цвет контура прямоугольника */
stroke-width: 2; /* ширина контура прямоугольника */
transition: 0.
8s; /* плавный переход между состояниями */
}
Эффект наведения
Переходим к самому главному. Мы хотим, чтобы при наведении на кнопку, увеличивалась ширина контуров прямоугольника. Кроме того, сплошной контур линии должен меняться на прерывистую линию. За это отвечает свойство
svg rect {
stroke-dasharray: 20, 40;
}
Зададим изначально максимально длинную линию с нулевым промежутком у свойства stroke-dasharray.
svg rect {
stroke: #bf360c;
stroke-width: 2;
transition: 0.8s;
stroke-dasharray: 400, 0; /* эффект сплошной линии */
}
При наведении на кнопку вместо сплошной линии появляется пунктирная линия.
.button:hover svg rect {
stroke-width: 5;
stroke-dasharray: 35, 275; /* пунктир и промежуток */
stroke-dashoffset: 40; /* смещение пунктира */
}
Посмотрите пример на CodePen
Мир фронтенда очень велик и разнообразен и как не утонуть в потоке информации? И с чего вообще начать? Я рекомендую идти от простого к сложному и последовательно изучить все базовые возможности
- Создано 07.06.2021 10:17:13
- Михаил Русаков
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
-
Кнопка:
<a href=»https://myrusakov.ru» target=»_blank»><img src=»https://myrusakov.ru/images/button.gif» alt=»Как создать свой сайт» /></a>Она выглядит вот так: -
Текстовая ссылка:
<a href=»https://myrusakov.ru» target=»_blank»>Как создать свой сайт</a>Она выглядит вот так: Как создать свой сайт
- BB-код ссылки для форумов (например, можете поставить её в подписи):
[URL=»https://myrusakov.
ru»]Как создать свой сайт[/URL]
Селекторы псевдоклассов и псевдоэлементов в CSS (hover, first-child, first-line и другие), отношения между тегами Html кода
Обновлено 10 января 2021 Автор: Дмитрий Иванецку- Отношения между тегами Html кода — дерево документа
- Селекторы псевдоклассов — hover, focus и first-child
- Селекторы псевдоэлементов — first-line (letter), after и before
Здравствуйте, уважаемые читатели блога KtoNaNovenkogo.ru. Сегодня мы продолжим тему изучения таблицы каскадных стилей и наполнять новыми материалами справочник.
Тема селекторов в CSS, которая была начата в предыдущей статье, осталась еще не завершенной, ибо мы рассмотрели только пять из семи возможных типов (тега и класса (class), Id, универсальный и атрибутов) и на очереди остались селекторы псевдоклассов и псевдоэлементов.
Отношения между тегами Html кода — дерево документа
Давайте начнем с псевдоклассов. Тут, правда, сначала нужно будет сделать отступление.
Любой браузер, получая документ с любым языком разметки, тут же начинает его разбирать. Модуль, отвечающий в браузере за это дело, обычно называют парсер — он разбирает код, исправляет ошибки и формирует так называемое дерево.
Результат работы парсера любого браузера можно увидеть с помощью некоторых плагинов или расширений для этих обозревателей. Например, все тот же незаменимый плагин для Firefox под названием Firebug показывает это самое дерево документа:
Узлы этого дерева помечены плюсиками, нажав на которые можно будет увидеть вложенные элементы языка разметки Html. Построение этого дерева и есть результат работы парсера браузера. Давайте теперь посмотрим на принципы отношения между собой отдельных узлов.
Таких взаимоотношений может быть всего три вида (очень похоже на построение генеалогического дерева — отношение между родственниками):
- Предки и потомки. Например, для тега, показанного на приведенном выше примере, все остальные элементы являются потомками.
Для них же всех он является прародителем — предком. Т.е. все, что находится внутри — это потомки. А предками будут являться все элементы, внутри которых данный элемент лежит. - Родитель и ребенок — в цепочке предки-потомки всегда есть два ближайших звена, которые будут отвечать понятиям родитель и ребенок. Т.е. у любого Html элемента есть один родитель (ближайший предок) и в то же время у него могут быть или не быть один или же несколько детей.
- Сестринские (братские) отношения — к ним относятся элементы, у которых один общий родитель.
Само по себе название «псевдоклассы» обозначает то, что специально в коде ни у каких элементов (тегов) такие классы (значения для атрибута Class) никто не прописывал, но у этих самых элементов периодически могут возникать определенные динамические состояния, для которых и были придуманы селекторы псевдоклассов.
Селекторы псевдоклассов — hover, focus, first-child и другие
Например, селекторы Link и Visited во всех браузерах могут использоваться только для оформления гиперссылок:
Link подразумевает под собой не посещенную ссылку (по которой пользователь еще не переходил), а Visited — посещенную.
Таким образом вы можете настроить, например, изменение цвета для уже посещенных пользователем ссылок, ну или еще что-то другое (задать визуальное состояние для всех посещенных гиперссылок). Естественно, что посещенные будут учитываться именно для данного конкретного браузера и до момента очистки его истории.
Синтаксис написания селекторов псевдоклассов заключается в проставлении двоеточия после названия Html элемента, для которого вы его используете (a:visited).
a:visited {color:red;}Следующие три селектора (active, hover и focus) могут использоваться для любых тегов:
Active соответствует клику левой кнопки мыши по тому элементу в Html коде, название которого вы прописали перед этим псевдоклассом в селекторе (в нашем примере это тег гиперссылки A). Как только левую клавишу пользователь отожмет — псевдокласс active исчезнет.
p:active {color:red}В этом случае, при наведении курсора мыши на любой абзац текста и щелчке по левой кнопке мыши, мы увидим, что цвет этого параграфа изменится на красный.
После отжатия кнопки цвет абзаца опять вернется к принятому по умолчанию. Т.е. данный псевдокласс active динамичен и будет работать абсолютно для любых тэгов (например, для контейнеров Div и т.п.). При клике на этом элементе он может изменить свое визуальное оформление в соответствии с нашими пожеланиями.
Hover — позволяет изменять визуальное оформление любого элемента в Html коде при наведении на него курсора мыши. При отведении курсора визуальное оформление элемента вернется к используемому по умолчанию.
p:hover {color:red}Псевдокласс focus — позволяет изменять визуальное оформление тегов находящимся сейчас в фокусе. Как известно, фокус на веб странице можно переносить с помощью нажатия на клавишу Tab на клавиатуре. Причем, фокус может передаваться только между следующими элементам: ссылки и элементы форм в Html.
Псевдоклассы active и hover в браузере IE 6 работают только для элементов гиперссылок, а focus не работает вообще ни в IE 6, ни в IE 7.
Последний псевдокласс называется first-child (первый ребенок, в переводе).
:first-child {color:red}Эта запись будет означать, что все элементы исходного кода страницы, которые являются первыми детьми своих родителей, будут покрашены в красный цвет.
First-child в IE 6 не работает, что печально.
Селекторы псевдоэлементов — first-line (letter), after и before
Во время разработки концепции CSS планировалось писать селекторы псевдоэлементов с двойным двоеточием, чтобы отличать их от псевдоклассов, но пока синтаксис таков, что все они записываются с одним двоеточием. Возможно, что в будущем будут вводить соответствующие изменения.
По самому слову «псевдоэлементы» понятно, что таких тегов в Html коде нет. На данный момент псевдоэлементов всего четыре и они приведены на расположенном чуть выше рисунке. Наверное, понятно по самому названию, что first-line будет указывать на первую линию, а first-letter — на первую букву.
Причем, оба этих псевдоэлемента применяются только к блочным тегам (заголовки, параграфы, контейнеры и т.п.) и как это ни печально, но в браузере IE 6 они тоже не работают.
p:first-line {color:red}Что это даст? Во всех параграфах на веб странице первые строки текста окрасятся в красный цвет. Для простоты подключим CSS к языку Html с помощью тега style и пропишем соответствующее свойство с использованием псевдоэлемента first-line в селекторе параграфа:
Тогда, как мы и планировали, все первые строки в абзацах окрасятся в красный цвет:
Ну, а с помощью first-letter можно сделать, например, так называемую буквицу (когда первая буква в абзаце отличается большим размером и цветом). Для этого можно будет прописать следующие CSS плавила для данного селектора псевдоэлемента:
p:first-letter {font-size:5em; float:left; color:red}Про Em, Ex, пиксели и другие размерности в CSS мы с вами уже говорили. Исходный код с добавленными свойствами тогда будет выглядеть так:
А сама вебстраница с буквицей, созданной с помощью селектора first-letter, будет выглядеть так:
Два оставшихся псевдоэлемента after и before нужны для формирования контента на лету.
Давайте посмотрим на примере:
p:after {
content: " KtoNaNovenkogo.ru";
color:red;
}В результате, в конце каждого абзаца на вебстранице автоматически добавится тот фрагмент, который мы указали в CSS свойстве «content» (оно используется только для псевдоэлементов after и before) и этот фрагмент будет окрашен в красный цвет:
Если бы мы вместо «after» использовали бы «before», то дополнительный контент был бы добавлен внутри каждого абзаца на странице, но уже перед его содержимым. Напрашивается вопрос — а для чего это можно использовать на практике?
Оказывается, с помощью этих псевдоэлементов можно, например, создать сложную нумерацию вида «5.2.13». Обычными средствами Html этого сделать нельзя, а с использованием before — можно.
Для того, чтобы получить такой сложно нумерованный список, используется довольно простой Html код:
Но при этом имеет место быть сложный код CSS стилей с использованием, естественно, псевдоэлементов after и before:
Все очень здорово, но, к сожалению, after и before не поддерживаются в браузерах IE 6 и IE 7.
Увы и ах. В следующей статье мы поговорим про комбинации CSS селекторов и их приоритетность.
Удачи вам! До скорых встреч на страницах блога KtoNaNovenkogo.ru
Псевдоклассы. Учебник CSS.
Глава 15
Псевдоклассы — это особые свойства, которые позволяют менять стиль элемента в зависимости от действий пользователя, а так же положения этого элемента (тега) в общем потоке документа, что позволяет разбавить дизайн страницы некой динамикой и логикой. Классическим примером применения псевдоклассов является ссылка, которая меняет свой цвет при наведении на неё курсором.
Вот список всех псевдоклассов:
- hover — Стиль элемента на который наведён курсор мыши.
- active — Стиль для ссылки которая становится активной, но переход по ней еще не совершен.
- visited — Стиль для недавно посещённой ссылки.
- link — Стиль для нечасто посещаемой ссылки.
- focus — Стиль элемента находящегося в фокусе.

- first-child — Стиль первого дочернего элемента.
- lang — Определяет язык, который используется в фрагменте документа.
О каждом псевдоклассе мы отдельно поговорим ниже, а сейчас пару слов о синтаксисе.
Для того чтобы применить тот или иной псевдокласс к элементу и определить его стиль нужно следовать следующим правилам синтаксиса:
a:hover { color:#ff0000}где:
a — элемент (селектор), а проще тег к которому мы решили применить псевдокласс в нашем случае это ссылка.
:hover — после двоеточия собственно нужный нам псевдокласс.
{color:#ff0000} — ну и блок объявления стилей в фигурных скобках.
А вся эта запись вместе будет говорить о том, что если навести курсором на такую ссылку — то она покраснеет.
Так собственно мы подошли к первому, самому популярному, псевдоклассу hover.
Как Вы уже, наверное, догадались, псевдокласс hover активизируется в том случае, если на элемент наведен курсор.![]()
Ну а раз уж догадались просто покажу пример:
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»><html>
<head>
<title>Псевдоклассы</title>
<style type=»text/css»>
.menu {
display: block;
width: 180px;
background-color:#fff8dc;
color:#008;
font-size: 16px;
text-decoration: none;
padding: 3px;
}
.menu:hover {
display: block;
width: 180px;
background-color:#b8860b;
color:#fff;
padding: 3px;
font-size: 16px;
text-decoration: none;
}
tr:hover {
background-color:#b8860b;
}
</style>
</head>
<body>
<p>Чем Вам не блок навигации по сайту?</p>
<a href=»#»>Главная</a>
<a href=»#»>Карта сайта</a>
<a href=»#»>Купить слона</a>
<a href=»#»>Продать слона</a>
<a href=»#»>Взять слона на прокат</a>
<hr>
<p>А вот ещё один распространенный трюк.
. строки в таблице подсвечиваются при наведении на них курсором.</p><table border=»1″ bordercolor=»#ccc» cellpadding=»1″ cellspacing=»0″>
<tr>
<td>Иванов</td><td>+</td><td> </td><td> </td><td>+</td><td> </td><td> </td>
</tr>
<tr>
<td>Петров</td><td> </td><td>+</td><td> </td><td> </td><td>+</td><td> </td>
</tr>
<tr>
<td>Сидоров</td><td> </td><td> </td><td>+</td><td> </td><td> </td><td>+</td>
</tr>
</table>
</body>
</html>
Несколько слов к примеру выше.
.
Как Вы наверное заметили в качестве селектора псевдокласса может выступать не только какой либо элемент — тег, но и класс или идентификатор. Так в примере к классу .menu применён псевдокласс hover и синтаксис приобретает следующий вид:
.menu:hover { color:#ff0000;}Не запутались в терминологии?
Простыми словами мы сказали браузеру что мол подсвечивай красным только те ссылки которые находится в навигационном блоке (выведены в класс.menu ), а остальное оставь как есть!
Псевдокласс hover может быть применён к любому элементу, выводимому на экран, так в нашем примере, для того чтобы организовать подсветку строк таблицы мы применили его к тегу <tr>. Однако следует отметить, что браузер Internet Explorer 6 и его более ранние версии поддерживает псевдокласс hover только для ссылок — тег <a>, так что, к примеру, строки таблицы, при наведении на них курсора, в браузерах IE6 и ниже подсвечиваться не будут!
Рассмотрим сразу три псевдокласса созданных для работы со ссылками.
- active — Стиль активной ссылки.
- visited — Стиль для недавно посещённой ссылки.
- link — Стиль для нечасто посещаемой ссылки.
Сначала покажу пример:
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»><html>
<head>
<title>Псевдоклассы и ссылки</title>
<style type=»text/css»>
a:link {color:#0000ff}
a:active {color:#ff0000}
a:visited {color:#008000}
</style>
</head>
<body>
<a href=»#1″>Ссылка на первый якорь</a>
<a href=»#2″>Ссылка на второй якорь</a>
<a href=»#3″>Ссылка на третий якорь</a>
<hr>
<a name=»1″><h5>Первый якорь</h5></a>
<p>Псевдокласс link, в этом примере, указывает, что все не посещенные ссылки должны отображаться синим цветом.
</p> <a name=»2″><h5>Второй якорь</h5></a>
<p>Попробуйте нажить и удерживать на одну из не посещенных ссылок, чтобы увидеть для работу псевдокласса active.</p>
<a name=»3″><h5>Третий якорь</h5></a>
<p>visited — псевдокласс который, в этом примере, говорит о том, что все посещенные ссылки должны отображаться зеленым цветом.</p>
</body>
</html>
Теперь расскажу более подробно.
Псевдокласс active присваивает ссылке определённый стиль в тот момент когда эта ссылка активна, то есть в тот момент когда пользователь нажал на ссылку, но еще не отпустил кнопку мыши. Короче active — это стиль ссылки в момент клика по ней.
Браузеры некоторое время помнят, на какие ссылки нажимал пользователь в последнее время, так вот, псевдокласс visited указывает стиль ссылки которая недавно посещалась пользователем.
Псевдокласс link описывает стиль ссылки, которая ранее не посещалась пользователем. Надо отметить, что никакой ощутимой разницы между записью a {…} и a:link {…} нет, так что применение данного псевдокласса в этом случае ровным счетом ничего не меняет.
Все три вышеперечисленных псевдокласса предназначены для работы с ссылками, однако псевдокласс active может быть применён к любому элементу — работать будет везде, кроме браузера Internet Explorer 6 и ниже.
Данный псевдокласс определяет стиль элемента, если тот находится в фокусе. Теперь собственно о том, что такое фокус?.. как в случае с оптикой и иллюзией, слово фокус в CSS обозначат, что некий объект, а точнее элемент, находится в центре внимания наблюдателя — пользователя. Такими элементами могут быть теги <a> <input> <select> и <textarea>.
Посмотрите на пример:
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.
01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»><html>
<head>
<title>Псевдокласс focus</title>
<style type=»text/css»>
input:focus {color: red}
</style>
</head>
<body>
<form>
<input type=»text» value=»Введите текст в эту форму» size=»30″>
</form>
<p>Ввели? а теперь щелкните по пустому месту на экране чтобы форма потеряла фокус.</p>
</body>
</html>
В примере текст в текстовом поле <input> изначально чёрный, но как только элемент получает фокус — то есть тогда когда пользователь кликнет по данному полю и начнет набирать текст, он окрасится красным.
Вот и весь фокус-покус..
Думаю, в ходе обучения CSS Вы уже поняли, что все элементы можно определить как родительские или дочерние и что элемент родитель может содержать в себе несколько дочерних элементов, ну например:
<div>— блок родитель<p></p> — первый дочерний элемент
<p></p> — второй дочерний элемент
</div>
Так вот псевдокласс first-child определят стиль первого дочернего элемента находящегося в родительском контейнере.
<html>
<head>
<title>Псевдокласс first-child</title>
<style type=»text/css»>
div {
margin: 20px;
padding: 30px;
background-color: #c0e4ff;
border: 2px solid #008000
}
p {
color: #555;
background-color: #dcdcdc;
border: 2px solid #555
}
p:first-child {
color: #f00;
background-color: #c5ffa0;
border: 2px solid #008000
}
</style>
</head>
<body>
<div>
<p>первый дочерний параграф — он выделен псевдоклассом first-child</p>
<p>второй дочерний параграф</p>
<p>третий дочерний параграф</p>
</div>
<div>
<p>и здесь первый дочерний параграф выделен хотя блок родитель уже другой</p>
<p>второй дочерний параграф</p>
</div>
</body>
</html>
Обратите внимание на тот факт, что если бы в блоке родителе перед дочерними параграфами стоял любой другой тег, заголовок <h2> к примеру, то псевдокласс first-child уже не действовал бы к первому параграфу.
. так как хоть параграф то он и первый, но элемент в блоке родителе уже второй.
Применяют данный псевдокласс в тех случаях , если требуется задать разный стиль для первого и последующих элементов, например сделать «буквицу»- одну единственную в начале документа или обозначить первый абзац текста на всех страницах сайта , выделить первый пункт в списках…и т.д.
Псевдокласс lang определяет язык текста того или иного элемента или документа в целом.
Если Вы помните из курса HTML, язык документа определяют атрибуты: charset — кодировка документа и content — язык документа для тега <meta>.
<meta http-equiv=»Content-Type» Content=»text/html; Charset=Windows-1251″>
<meta http-equiv=»Content-Language» Content=»ru»>
Так вот для того чтобы определить язык отдельно взятого текстового блока используют псевдокласс lang() — в круглых скобках которого собственно и указывается язык.![]()
Язык может быть:
- ru — Русский
- en — Английский
- de — Немецкий
- fr — Французский
- it — Итальянский
Всё вместе пишется так:
span:lang(en) {font-style: italic}— здесь мы указали, что текст взятый в контейнер <span> английский и что он должен отображаться курсивом.
Пример:
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01//EN» «http://www.w3.org/TR/html4/strict.dtd»><html>
<head>
<title>Псевдокласс lang</title>
<meta http-equiv=»Content-Type» Content=»text/html; Charset=Windows-1251″>
<meta http-equiv=»Content-Language» Content=»ru»>
<style type=»text/css»>
p:lang(ru) {color: #00f;}
p:lang(en) {color: #f00;}
</style>
</head>
<body>
<p lang=»ru»>Русский текст выделен синим</p>
<p lang=»en»>English text is chosen red</p>
</body>
</html>
Обратите внимание, что в теге, в нашем случая параграфе, мы указываем с помощью атрибута lang используемый язык и его стиль: <p lang=»en»>текст</p> прописанный в блоке CSS.
Так же псевдокласс lang позволяет определять вид кавычек для цитат (тег <q>) с помощью значения quotes — кавычки. В России привычно использовать двойные кавычки, в других странах дела обстоят иначе.
Пишется так:
q:lang(en) {quotes: «\201C» «\201D»}В фигурных скобках после значения quotes указывается юникод символа/ов или просто смвол/ы для открывающей и закрывающей кавычки.
Пример:
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01//EN» «http://www.w3.org/TR/html4/strict.dtd»><html>
<head>
<title>Псевдокласс lang. Цитаты.</title>
<meta http-equiv=»Content-Type» Content=»text/html; Charset=Windows-1251″>
<meta http-equiv=»Content-Language» Content=»ru»>
<style type=»text/css»>
div {
color:#000;
font-size: 24px;
}
q:lang(en) {quotes: «\201C» «\201D»}
q:lang(de) {quotes: «\201E» «\201C»}
q:lang(fr) {quotes: «\00AB» «\00BB»}
q:lang(ru) {quotes: «ёклмн..» «..ёпрст»}
</style>
</head>
<body>
<div>
<p>Обратите внимание на вид кавычек для цитат:<p>
<q>Цитата по умолчанию</q><br>
<q lang=»fr»>Французская цитата</q><br>
<q lang=»de»>Немецкая цитата</q><br>
<q lang=»en»>Английская цитата</q><br>
<q lang=»ru»>Русская цитата</q><br>
</div>
</body>
</html>
Псевдоклассы нельзя внедрять в HTML документ с помощью атрибута style. Можно только с помощью тега <style> в голове документа или внешнего CSS файла.
Если селектор, какого либо псевдокласса, явно не указывать, а написать вот так, например:
:hover {color: #ff0}— то это будет значить, что действие данного псевдокласса будет распространятся на все элементы документа.
Браузер IE6 и ниже игнорирует практически все псевдоклассы.
Создание кастомного title
Кастомный «title» (в простонародье tooltip — «Подсказка»)
Проблема
- В мобильной версии сайта не отображался стандартный html-атрибут «title», так как нет реакции на наведение.;
- На сайте html-атрибут «title» содержит текст разного размера и ссылки на другие страницы, при этом перейти по ссылкам не представлялось возможным.
Решение
Для элементов на которых должны отображаться подсказки используется тег «span», к которому добавляется data-атрибут, который мы назвали «data-comment». С помощью класса «.js-span-comment» инициализируется работа js-скрипта.
Javascript использует метод innerHTML, благодаря чему мы можем вставлять содержимое атрибута в виде верстки:
Как работает Javascript код:
Пояснения к коду:
- Функция самовызывающаяся, сделана в виде модуля. Внутри есть главный метод init(), в котором мы ищем все подсказки на странице. Если мы не находим ни одного, тогда функция завершается;
- Если мы находим подсказку, тогда на документ мы вешаем слушателя с событием «click». По клику мы проверяем наличие data-атрибута. Если data-атрибут найден, мы проверяем переменную «flag», если у неё значение «true», тогда мы создаем подсказку. Создается он динамически. Переменная «flag» переключается в «false», чтобы не было создания повторной подсказки;
- Также мы вешаем на window событие «scroll», по которому любая открытая подсказка будет удалена из документа;
- Есть дополнительное условие, при котором мы проверяем ширину экрана при первичном срабатывании функции. Если ширина > 992 px., тогда на подсказку мы вешаем событие «mouseover» (когда курсор находится над тегом «span», который должен показать подсказку). Таким образом мы эмулируем событие «hover». Исчезает подсказка, только если сначала навести на неё курсор, а потом убрать. Сделано это ради того, чтобы пользователь мог скопировать содержимое, либо перейти по ссылке, указанной в подсказке.
Как позиционируется подсказка:
Системный тег «title» не зависит от ширины экрана браузера и появляется в том месте, где мы навели курсор.
В нашем случае подсказка — это «span» со своими стилями и требовалось выбрать объект, относительно которого должно быть позиционирование. Можно было привязать так же к курсору, но тогда возникли бы проблемы, когда пользователь мог вызвать подсказку у края экрана (например слева, слишком близко к краю). Поэтому было выбрано позиционирование от начала строки, потому что некоторые блоки, на которые должна быть подсказка, могут быть очень длинными и в зависимости от ширины экрана находится в разных местах.
Как работает позиционирование:
При создании подсказки мы находим координаты нашего блока с подсказкой. После чего, вычисляем координаты относительно окна браузера и позиционирования подсказки с {position:fixed} в CSS-стилях. Координаты находим с помощью метода getBoundingClientRect(). Координата «left» = это left нашего блока с подсказкой. Координата «top» = это сумма высоты нашего блока + координата «top» + 3 px. (чтобы наша подсказка не закрывала текст).
Результат
Когда требуется дополнительный функционал (см. примеры ниже), можно использовать кастомную подсказку. В остальных случаях лучше обойтись стандартным тегом «title».
-
На мобильных устройствах появилась возможность отображать подсказки и взаимодействовать с ними:
- Появилась возможность копировать текст из подсказок:
- Появилась возможность переходить по ссылкам в подсказке:
Псевдокласс :focus | CSS — Примеры
Элементу, получившему фокус, можно задать стиль с помощью псевдокласса :focus [w3.org].
Чем отличаются :active, :focus и :hover
<style>
.input1:hover {
background: blue;
}
.input1:focus {
background: green;
}
.input1:active {
background: red;
}
</style>
<input type="text"/>:active, :focus и :hover равнозначны, побеждает тот, что ниже.
<style>
.input2:active {
background: red;
}
.input2:focus {
background: green;
}
.input2:hover {
background: blue;
}
</style>
<input type="text"/>:focus для тегов HTML: input, select и textarea
<input type="text" placeholder="ФИО"/>
:focus для всех тегов HTML
:focus можно прописать для любого тега HTML, но если это не элемент формы, то нужно указывать атрибут tabindex или contenteditable.
Это тег div. Его содержимое не поменять.
<div tabindex="0">Это тег div</div>
Это тег div. Его содержимое можно менять.
<div contenteditable>Это тег div</div>
Как снять фокус CSS
- Кликнуть вне элемента.
- Кликнуть по дочернему элементу, который может иметь фокус.
Нажатие и на зелёное поле, и на синее приведёт к смене фона. Клик по синему полю не снимет фокус.
<div tabindex="0"> <div></div> </div>
Нажатие только на зелёное поле приведёт к смене фона. Клик по синему полю снимет фокус с родителя, установит фокус на внутреннем div.
<div tabindex="0"> <div tabindex="0"></div> </div>
- Кликнуть по элементу, который в состоянии фокуса имеет pointer-events: none;.
Нажатие на зелёное поле приведёт к смене фона. Повторный щелчок снимет фокус.
<div tabindex="0"></div>
- Кликнуть по дочернему элементу, если для элемента в состоянии фокуса стоит visibility: hidden;. Google Chrome не хочет, чтобы в состоянии фокуса элемент пропадал.
<div tabindex="0"> <div></div> </div>
Практические примеры
- Адаптивное горизонтальное меню для сайта на CSS
- Фотогалерея для сайта на CSS
Как я могу создать CSS Hover-эффекты?
Эффекты наведения CSS довольно просты в создании, а базовые эффекты наведения можно быстро и легко реализовать и изменить с помощью ряда других параметров. Каскадные таблицы стилей (CSS) — это язык, используемый при создании стиля и макета документа, созданного на языке разметки, и его можно использовать для простого создания эффектов наведения. Эффекты наведения — это изменения, которые происходят с текстом, изображениями или другими объектами в документе, когда указатель, управляемый мышью, наводится над объектом. Эффекты парения CSS обычно создаются внутри кода CSS и могут быть реализованы быстро и эффективно.
Один из самых простых типов создаваемых CSS-эффектов при наведении — это эффект, который вызывает изменение ссылки на веб-сайте при наведении указателя мыши. Например, кто-то может захотеть создать текстовую ссылку, которая выглядит как стандартный текст или имеет цвет, отличный от остальной части страницы, но при «наведении» или «наведении» она подчеркивается или ободряется. Как именно это будет сделано, обычно будет зависеть от точного кодирования, используемого на странице, но в простом случае эффект CSS-наведения можно добавить в правила CSS в разделе «style».
Для эффекта наведения CSS создается новое правило с использованием соответствующего тега для объекта, к которому добавляется эффект. Например, выбранный текст может быть частью списка или выделен в теле веб-страницы. Этот текст должен иметь определенный тег, связанный с ним в кодировке тела. С этим отмеченным тегом можно создать правило, чтобы установить эффект наведения CSS для любых объектов с данным тегом.
Например, используя текст, если вы хотите, чтобы ссылка стала подчеркнутой, когда пользователь наводит курсор на нее, вы можете начать с пометки этой ссылки внутри кода тела и создания специального правила для этого тега. В этом правиле вы можете указать, какой цвет должен иметь этот текст, легко выделяя его из окружающего текста и визуально указывая, что пользователь может захотеть навести на него курсор, что затем вызовет эффект наведения CSS. Этот эффект добавляется созданием псевдокласса «hover» к тегу для строки текста.
Например, если бы тег для текста был «a», вы бы использовали псевдокласс, который выглядел как «a: hover {…}», с желаемым эффектом наведения CSS, указанным в скобках. В предыдущем примере, если желаемый эффект заключался в подчеркивании текста при наведении на него, то в скобках читалось бы «text-ornament: underline;»; Существует несколько различных эффектов наведения, которые можно создать для разных объектов, и у каждого есть отдельная команда для создания эффекта, но в большинстве случаев процесс аналогичен.
ДРУГИЕ ЯЗЫКИ
Псевдоклассы: visited,: hover,: active не работают
CSS псевдо классов a:hover, a:visited, a:active и не работают
HTML:
<p>
<ul>
<li>
<a href="ChrisHorse.jpg"> My Photoshop Assignment #1 </a>
</li>
<li>
<a href="puppies.html"> My puppies page </a>
</li>
<li>
<a href="fish.html"> My Fish Page </a>
</li>
</ul>
</p>
CSS:
a:hover {color:green;}
a:visited {color:red;}
a:active {color:black;}
css Поделиться Источник user2916310 24 октября 2013 в 14:46
3 ответа
- тег hover, active и visited не работает
Я поставил тег вокруг какой-либо текст и присвойте ему идентификатор mainpage. Затем я добавляю CCS для mainpage, но почему-то hover, active и visted эффекты вообще не отображаются. Я сделал что-то не так, определяя их? Я новичок и очень помогаю! #mainpage { color: white; text-decoration: none;…
- Стиль 4 различных дивов с :hover,: visited и: active
Надеюсь, кто-нибудь сможет мне в этом помочь. Я получил это HTML: <a href=http://test><div id=topleftbox></div></a> <a href=http://test><div id=toprightbox></div></a> <a href=http://test><div id=bottomleftbox></div></a> <a…
3
Правильный порядок в вашем CSS должен быть:
a:link { color: red } /* unvisited links */
a:visited { color: blue } /* visited links */
a:hover { color: yellow } /* user hovers */
a:active { color: lime } /* active links */
Поделиться Paulie_D 24 октября 2013 в 14:50
1
Я проверил ваш код из jsfiddle . Все в порядке. Возможно, вы забыли включить свой файл css в свой файл html.
Итак, просто включите его из следующей инструкции :
<link rel="stylesheet" type="text/css" href="mystyle.css">
Поделиться lvarayut 24 октября 2013 в 14:52
0
Предполагая здесь , что ваша проблема заключается в :hover, проблема в том, что вы размещаете селектор :hover перед селектором :visited , это означает, что после того, как ваша ссылка была посещена, у нее больше не будет стиля наведения (так как он будет отменен посещенным стилем). Просто измените порядок ваших селекторов:
a:visited {color:red;}
a:hover {color:green;}
a:active {color:black;}
При этом, когда ваша ссылка была посещена, она будет красной; когда ваша ссылка будет наведена на нее, она будет зеленой, независимо от того, была ли она посещена или нет; и когда ваша ссылка активирована, она будет черной.
JSFiddle демо .
Поделиться James Donnelly 24 октября 2013 в 14:52
Похожие вопросы:
Выбор active и hover в одном объявлении?
Эй, ребята, как я могу выбрать :active и: hover псевдоклассы в одном объявлении или это невозможно? Вот что у меня есть: .hover-listing-btn:hover { color:#fff; } .hover-listing-btn:active {…
Как установить якорь последнего клика, чтобы он отличался цветом от всех других ссылок?
a:link {color:#FF0000} /* unvisited link */ a:visited {color:#00FF00} /* visited link */ a:hover {color:#FF00FF} /* mouse over link */ a:active {color:#0000FF} /* selected link */ Псевдоклассы…
Правильный способ сделать Hover/Focus/Visited по ссылкам с классом?
Как правильно указать состояние hover/focus/visited на ссылке, имеющей класс? a:focus.class{} или a.class:focus{} Оба, кажется, работают, просто интересно, какой из них считается правильным .
тег hover, active и visited не работает
Я поставил тег вокруг какой-либо текст и присвойте ему идентификатор mainpage. Затем я добавляю CCS для mainpage, но почему-то hover, active и visted эффекты вообще не отображаются. Я сделал что-то…
Стиль 4 различных дивов с :hover,: visited и: active
Надеюсь, кто-нибудь сможет мне в этом помочь. Я получил это HTML: <a href=http://test><div id=topleftbox></div></a> <a href=http://test><div…
Как стилизовать div с фоновыми изображениями с помощью псевдоклассов: active :visited :hover?
У меня есть 4 дива и я хочу стилизовать их так: http://jsfiddle.net/AcvbG HTML: <a href=http://test id=topleftbox></a> CSS: #topleftbox { background: red; background-repeat: no-repeat;…
Почему Bootstrap содержит как классы, так и псевдоклассы для focus и active?
Я пытаюсь понять, как стилизуются кнопки Bootstrap, проверяя элемент button в Chrome и используя флажки force element state, чтобы увидеть стиль для наведения, фокусировки и активных состояний (а…
css | button:hover фон все еще серый
Я заметил, что кнопки (button.term) рядом с сеткой становятся серыми при наведении курсора. Я установил псевдоклассы (hover, focus, active, visited) в белый цвет!важно, но это все равно не работает….
Как получить доступ к свойствам focus/hover/visited CSS элемента через Javascript?
Возможно, я сейчас устал и странно думаю, но я просто не могу найти, как получить значения свойств CSS, определенных в сфокусированных, зависших или посещенных состояниях элемента. Цель состоит в…
:hover работает, но rest состояний ссылки не работают (например,: link &: visited)
По неизвестной мне причине, для div с TWO внутри: Государство :hover нормально работает :link , :visited не работают Я не могу понять, почему? .menu:link { color: teal; } .menu:visited { color: red;…
Рецепт прослушивателя наведениядля Диспетчера тегов Google
Этот рецепт Диспетчера тегов Google был первоначально опубликован Lunametrics.
Что он делает? Отправляет события на уровень данных о взаимодействиях при наведении курсора, которые происходят над заданными селекторами CSS на странице. Этот рецепт предназначен только для слушателя. Он не оказывает видимого воздействия на ваш сайт и не отправляет данные в Google Analytics или другие инструменты, если вы не создадите для этого дополнительные триггеры и теги.
ИНСТРУКЦИЯ
- Загрузить файл контейнера
Загрузите файл JSON контейнера (щелкните ссылку правой кнопкой мыши и выберите «Сохранить ссылку как» или «Сохранить объект как», чтобы сохранить файл JSON на свой компьютер). - Импортировать файл JSON в GTM
Войдите в свой собственный контейнер Диспетчера тегов Google и перейдите в раздел администратора сайта. В разделе «Параметры контейнера» выберите «Импортировать контейнер». Прочтите это сообщение в блоге, чтобы узнать больше об импорте файла-контейнера. - Настройка элементов для отслеживания
Измените переменную «Constant — Hover Listener CSS Selectors», добавив список CSS-селекторов, разделенных запятыми, на которых вы хотите отслеживать активность наведения. Не знаете, как это сделать? Прочтите это сообщение в блоге. - Создавайте собственные теги, триггеры и переменные.
Этот конкретный рецепт фактически не создаст для вас никаких тегов. Создайте соответствующие переменные для извлечения информации из толчка уровня данных. Вам нужно будет создать свой собственный триггер с помощью Custom Event = hover, а затем прикрепить его к любым тегам, которые вы хотите активировать. - Предварительный просмотр и публикация
Используйте параметры предварительного просмотра, чтобы протестировать этот контейнер на своем собственном сайте. Попробуйте протестировать каждое из событий, чтобы убедиться, что они работают правильно.Если все в порядке, публикуйте! - Не знаете, как использовать этот рецепт?
Прочтите сообщение в блоге Lunametrics с подробным пошаговым руководством.
Посмотреть все 40+ рецептов Диспетчера тегов Google
Hover Web Element — Веб-строительные блоки
Строительный блок Hover Web Element используется для наведения курсора на веб-элемент, такой как кнопка или div-тег, в уже открытом окне браузера при работе с веб-автоматизацией.При наведении указателя веб-элемент автоматически отображается в поле зрения. Обратите внимание, что этот блок работает только с окнами браузера, которые ранее были открыты с помощью блока «Запустить веб-браузер» или их «дочерних» окон.
Полностью развернутый блок Hover Web Element показывает следующие свойства:
Заголовок блока («Веб-элемент при наведении курсора»)
Зеленый входной разъем в заголовке используется для запуска блока.
Зеленый выходной разъем в заголовке срабатывает при успешном наведении курсора на веб-элемент.
Заголовок блока («Веб-элемент при наведении курсора») можно изменить, дважды щелкнув по нему и введя новый заголовок.
Выбрать веб-элемент
Это свойство содержит указатель для наведенного веб-элемента.
Локатор веб-элементов можно захватить, щелкнув свойство правой кнопкой мыши и выбрав «Захватить новый веб-элемент».
После настройки локатор веб-элементов можно редактировать, щелкнув правой кнопкой мыши и выбрав «Редактировать веб-элемент». Посмотрите множество различных видео-примеров из Учебного центра, чтобы узнать, как это работает.
Свойство можно очистить, щелкнув правой кнопкой мыши и выбрав «Очистить веб-элемент».
Найден элемент
Это свойство содержит найденный веб-элемент в окне браузера. Его можно использовать в качестве исходного элемента в других строительных блоках, например, для сужения поиска определенного веб-элемента, такого как ячейки таблицы.
Не найдено
Этот зеленый выходной соединитель срабатывает, если веб-элемент не найден до истечения времени ожидания (см. Ниже). Обычно это используется для ветвления потока выполнения или для явного отказа кейса путем связывания его с блоком сбоя.
Найденная позиция
Позиция холста браузера, в которой веб-элемент был найден в координатах X, Y. Верхний левый угол холста браузера находится в позиции 0, 0.
Нажмите кнопку расширения, чтобы работать с координатами X и Y отдельно.
Обратите внимание, что любой веб-элемент, который установлен как невидимый (например, с использованием класса CSS), будет иметь позицию 0, 0.
Найденная площадь
Позиция холста браузера и размер найденного веб-элемента в координатах X, Y, Ширина, Высота, начиная с самого верхнего левого пикселя.Верхний левый угол экрана находится в позиции 0, 0.
Нажмите кнопку расширения, чтобы работать с положением и размером области, а также с их вложенными вспомогательными свойствами по отдельности.
Атрибуты
Это свойство содержит список всех атрибутов найденного веб-элемента в виде пар ключ: значение. Сюда входят стандартные атрибуты HTML, такие как class, style, href, а также любые настраиваемые атрибуты, такие как data-xxx и т. Д.
Для более непосредственной работы с атрибутами может быть полезен строительный блок Get Web Attribute вместо просмотра этого списка.
Значения CSS
В настоящее время не используется.
видимый
Это свойство вернет True, если найденный веб-элемент виден.
Имя тега
Имя тега найденного веб-элемента — например, div, tr, button или input.
Исходный элемент
Установив это свойство, локатор веб-элементов будет ограничен работой только внутри исходного элемента.
Например, если в предыдущем стандартном блоке был найден веб-элемент таблицы, установив его в качестве исходного элемента, можно выполнить поиск определенного веб-элемента tr или td внутри таблицы.
Окно браузера
При установке этого свойства строительный блок будет использовать определенное окно браузера.
Использование вхождения
Выберите вхождение веб-элемента для наведения курсора, если найдено более одного.
Выберите «Все», чтобы перебрать все вхождения. При выборе «Все» отображаются подсвойства «Текущий индекс» и «Завершено» (см. Ниже).
Счетчик
Это свойство содержит общее количество найденных веб-элементов, соответствующих указанному выше локатору.
Текущий индекс
Текущий индекс при переборе всех вхождений веб-элемента. Например, если обнаружено три вхождения тега div, это свойство будет содержать 1 для первого, затем 2 для второго и, наконец, 3 для последнего.
Завершен
Этот зеленый выходной разъем срабатывает, когда итерация всех вхождений завершена.
Тайм-аут по умолчанию
Если флажок свойства «Тайм-аут по умолчанию» не установлен, значение тайм-аута составляет 10 секунд.Если установлен флажок свойства «Тайм-аут по умолчанию», то будет применимо значение «Тайм-аут по умолчанию», выбранное в настройках потока.
Тайм-аут
Максимальное время, потраченное на поиск веб-элемента, прежде чем отказаться от него и вызвать «Не найдено» (см. Выше).
Примечание. Все обращения имеют «глобальный тайм-аут», который можно настроить на панели «Настройки». Это не связано с тайм-аутом одного строительного блока. Однако запущенное дело будет автоматически отменено, если оно будет длиться дольше глобального тайм-аута.
Прокрутите, чтобы найти
Если выбрано значение, отличное от «Нет», строительный блок будет использовать прокрутку при поиске веб-элемента. Это может быть полезно при поиске в прокручиваемом контенте, таком как веб-страницы, где элементы загружаются асинхронно, например с помощью бесконечной прокрутки.
Макс повторяет
Максимальное количество прокруток перед прекращением поиска веб-элемента.
Сумма
Количество прокрутки, которое будет выполняться при каждом повторе прокрутки.
Задержка (сек)
Задержка в секундах между каждым из значений прокрутки.
Требовать действительные imgs
Если этот флажок установлен, любой локатор веб-элементов, настроенный на поиск изображения (тег img), также будет проверять, действительно ли изображение загружается правильно. LEAPWORK проверяет это, отправляя HTTP-запрос источнику изображения и проверяя, что возвращается ответ 200.
Ожидание изменения DOM
Отложить поиск веб-элемента до тех пор, пока не будет никаких изменений в DOM страницы в течение определенного периода времени, например 3 секунды.
Это полезно при ожидании скрытых обновлений в javascript. Независимо от этого флажка поиск и щелчок будут происходить после ожидания не более 30 секунд.
Тайм-аут ожидания
Количество секунд, в течение которых в DOM не должно быть изменений, прежде чем продолжить.
Ожидание запросов
Отложить поиск веб-элемента до тех пор, пока не будет активных запросов XHR в течение определенного периода времени — например, 3 секунды.
Это полезно при ожидании закулисных обновлений с XHR.Некоторые корпоративные веб-приложения используют XHR и изменения DOM за кулисами, даже заменяя существующие теги кнопок новыми. Сюда входят Microsoft Dynamics 365 и Salesforce.
Независимо от этого флажка поиск и щелчок будут выполняться после ожидания не более 30 секунд.
Тайм-аут ожидания
Количество секунд, в течение которых запросы XHR не должны быть активными, прежде чем продолжить.
Всплывающие подсказки · Bootstrap
Документация и примеры для добавления пользовательских всплывающих подсказок Bootstrap с помощью CSS и JavaScript с использованием CSS3 для анимации и атрибутов данных для локального хранилища заголовков.
Обзор
Что нужно знать при использовании плагина всплывающей подсказки:
- Всплывающие подсказки полагаются на стороннюю библиотеку Popper.js для позиционирования. Вы должны включить popper.min.js перед bootstrap.js или использовать
bootstrap.bundle.min.js/bootstrap.bundle.js, который содержит Popper.js, чтобы всплывающие подсказки работали! - Если вы создаете наш JavaScript из исходного кода, для него требуется
util.js. Подсказки - используются по соображениям производительности, поэтому вы должны инициализировать их самостоятельно. .
- Всплывающие подсказки с заголовками нулевой длины никогда не отображаются.
- Укажите контейнер
: 'body', чтобы избежать проблем с рендерингом в более сложных компонентах (например, в наших группах ввода, группах кнопок и т. Д.). - Всплывающие подсказки для скрытых элементов не работают.
- Всплывающие подсказки для элементов
.disabledилиdisabledдолжны запускаться на элементе оболочки. - При запуске из гиперссылок, охватывающих несколько строк, всплывающие подсказки будут центрированы.Используйте
white-space: nowrap;на вашемs, чтобы избежать такого поведения. - Всплывающие подсказки должны быть скрыты до того, как соответствующие им элементы будут удалены из модели DOM.
Поняли? Отлично, давайте посмотрим, как они работают, на некоторых примерах.
Один из способов инициализировать все всплывающие подсказки на странице — выбрать их по их атрибуту data-toggle :
$ (function () {
$ ('[data-toggle = "tooltip"]'). tooltip ()
}) Примеры
Наведите указатель мыши на ссылки ниже, чтобы увидеть подсказки:
Наведите указатель мыши на кнопки ниже, чтобы увидеть четыре направления всплывающих подсказок: вверх, вправо, внизу и влево.
И с добавлением собственного HTML:
Использование
Плагин всплывающих подсказок генерирует контент и разметку по запросу и по умолчанию помещает всплывающие подсказки после их триггерного элемента.
Запуск всплывающей подсказки через JavaScript:
$ ('# example'). Tooltip (options) Markup
Требуемая разметка для всплывающей подсказки — это только атрибут данных, и заголовок , в элементе HTML, для которого вы хотите иметь всплывающую подсказку. Сгенерированная разметка всплывающей подсказки довольно проста, хотя для нее требуется позиция (по умолчанию плагином установлено значение top ).
Создание всплывающих подсказок для пользователей клавиатуры и вспомогательных технологий
Вы должны добавлять всплывающие подсказки только к элементам HTML, которые традиционно ориентированы на клавиатуру и являются интерактивными (например, ссылки или элементы управления формы).Хотя произвольные элементы HTML (например, s) можно сделать доступными для фокусировки, добавив атрибут tabindex = "0" , это добавит потенциально раздражающие и сбивающие с толку позиции табуляции на неинтерактивных элементах для пользователей клавиатуры. Кроме того, большинство вспомогательных технологий в настоящее время не выводят всплывающую подсказку в этой ситуации.
Кроме того, не полагайтесь исключительно на hover в качестве триггера для вашей всплывающей подсказки, так как это сделает ваши всплывающие подсказки невозможными для пользователей клавиатуры.
Наведите указатель мыши на меня
Текст всплывающей подсказки!
Отключенные элементы
Элементы с атрибутом Параметры могут передаваться через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя параметра к Добавляет всплывающую подсказку к определенному элементу.Пример: Задержка показа и скрытия всплывающей подсказки (мс) — не относится к ручному типу запуска Если указан номер, задержка применяется к скрытию / отображению Структура объекта: Разрешить HTML во всплывающей подсказке. Если true, HTML-теги в заголовке Используйте текст, если вас беспокоят XSS-атаки. Как разместить всплывающую подсказку - авто | наверх | внизу | слева | Правильно. Когда функция используется для определения размещения, она вызывается с помощью узла DOM всплывающей подсказки в качестве первого аргумента и узла DOM инициирующего элемента в качестве второго. Контекст Базовый HTML-код для использования при создании всплывающей подсказки. Заголовок Самый внешний элемент оболочки должен иметь Значение заголовка по умолчанию, если атрибут Если функция задана, она будет вызываться со своей ссылкой Как запускается всплывающая подсказка - щелкните | парить | фокус | руководство по эксплуатации.Вы можете передать несколько триггеров; разделите их пробелом. Опции для отдельных всплывающих подсказок можно также указать с помощью атрибутов данных, как описано выше. Все методы API являются асинхронными и запускают переход .Они возвращаются к вызывающему, как только начинается переход, но до его завершения . Кроме того, вызов метода для переходного компонента будет проигнорирован . См. Нашу документацию по JavaScript для получения дополнительной информации. Присоединяет обработчик всплывающей подсказки к коллекции элементов. Показывает всплывающую подсказку элемента. Возврат к вызывающей стороне до того, как всплывающая подсказка была фактически показана (т.е.е. до того, как произойдет событие Скрывает всплывающую подсказку элемента. Возврат к вызывающей стороне до того, как всплывающая подсказка была фактически скрыта (т.е. до того, как произойдет событие Переключает всплывающую подсказку элемента. Возврат к вызывающей стороне до того, как всплывающая подсказка была фактически показана или скрыта (то есть до того, как произойдет событие Скрывает и уничтожает всплывающую подсказку элемента.Всплывающие подсказки, использующие делегирование (которые создаются с использованием опции селектора Позволяет отображать всплывающую подсказку элемента. Подсказки включены по умолчанию. Удаляет возможность отображения всплывающей подсказки элемента.Всплывающая подсказка будет отображаться только в том случае, если она будет повторно включена. Переключает возможность отображения или скрытия всплывающей подсказки элемента. Обновляет положение всплывающей подсказки элемента. Я стилизовал По мере того как я уделял больше внимания доступности клавиатуры (и, следовательно, уделял больше внимания фокусировке), я начал думать, что мы не должны одинаково оформлять наведение, фокус и активные состояния. Для состояний наведения, фокуса и активного состояния должны быть разные стили. Причина проста: это разные государства! Сегодня я хочу показать вам волшебный способ легко стилизовать все три состояния. Начнем с Состояния наведения обычно представлены изменением Фокусируемые элементы: Вот несколько важных моментов, на которые следует обратить внимание: Чтобы сфокусироваться, мы больше заботимся о том, чтобы пользователи переходили по элементам с помощью табуляции, чем нажимали на них. Когда пользователь попадает на вкладку, он не знает, на что будет направлен фокус. Им остается только догадываться. Вот почему нам нужно заметно изменить внимание пользователя к сфокусированному элементу . Стиль фокуса по умолчанию в большинстве случаев подходит.Если вы хотите создать собственный фокус, подумайте об этих четырех вещах: Поскольку Вы можете использовать комбинацию свойств контура Когда вы взаимодействуете с вещами в реальной жизни, вы ожидаете какой-то обратной связи. Например, если вы нажмете кнопку, вы ожидаете, что она будет нажата. Этот отзыв полезен и для веб-сайтов.Вы можете стилизовать момент «нажатия кнопки» с помощью Две странные вещи, на которые следует обратить внимание: Ссылки имеют активный стиль по умолчанию. Они становятся красными при нажатии. Когда вы удерживаете левую кнопку мыши на фокусируемом элементе, вы запускаете активное состояние . Вы также одновременно запускаете состояние фокуса . Когда вы отпускаете левую кнопку мыши, фокус остается на элементе 👆 верно для большинства элементов, на которые можно сфокусироваться, кроме ссылок и кнопок. Для ссылок: Для кнопок: Если вы хотите, чтобы клики фокусировались на кнопках, вам нужно добавить этот JavaScript как можно раньше. (Что касается того, почему, вы можете прочитать статью, на которую я ссылался выше, для получения дополнительной информации). После того, как у вас будет этот код, поведение кнопок при нажатии станет: Теперь вы знаете о состояниях наведения, фокуса и активного состояния, я хочу поговорить о стилизации всех трех. Волшебная комбинация позволяет пользователям получать обратную связь, когда они наводят курсор, фокусируются и взаимодействуют с элементом.Вот код, который вам нужен: Для пользователей мыши: Для пользователей клавиатуры: Лучшее из обоих миров! Как я уже упоминал выше, нажатие на кнопки ведет себя странно в Safari и Firefox (Mac). Если вы добавили фрагмент кода JavaScript, который я вам показал, волшебная комбинация все еще работает. Но это не идеально. Для Safari и Firefox (Mac) происходит следующее: Если вы думаете, что этого достаточно, то волшебная комбинация работает. Вы можете остановиться здесь. Но если вы думаете, что аффорданса недостаточно, вам нужно стилизовать Вот и все! Надеюсь, вы узнали что-то сегодня! Если вам понравилась эта статья, расскажите о ней другу! Поделитесь этим в Твиттере. Если вы заметили опечатку, я буду признателен, если вы сможете исправить ее на GitHub. Спасибо! —- Вопрос: Можно ли отслеживать события зависания? Ответ: Да, с нашим рецептом Google Tag Manager! "Из коробки" Диспетчер тегов Google довольно гибок.Доступно несколько типов триггеров, которые отслеживают определенные действия или события, такие как клики, отправка форм, изменения истории и многое другое (более подробно о триггерах читайте в публикации Зи) и могут использоваться для активации тегов. Но Диспетчер тегов Google не отслеживает автоматически некоторые вещи, например события наведения курсора. Dorcas написал отличный пост об этом ограничении несколько лет назад, и мы все еще в той же лодке - нам нужно специальное решение для отслеживания, когда пользователи наводят курсор на элементы на нашем сайте. Чтобы упростить вам задачу, команда LunaMetrics создала рецепт Hover Listener, который вы можете просто импортировать в свой собственный контейнер GTM. В этом рецепте нет тегов или триггеров, поэтому вам нужно будет выполнить дополнительную настройку, чтобы увидеть данные о наведении курсора в Google Analytics. Загрузить рецепт слушателя наведения В переменной вы можете указать список любых CSS-селекторов, на которые вы хотите отслеживать наведение курсора на пользователя. Вы можете найти эту переменную вместе со всем остальным, включенным в наш рецепт, в папке LunaMetrics Hover Tracking Plugin. Если вы не знакомы с селекторами CSS, это шаблоны, которые вы можете указать для соответствия различным элементам. Их можно использовать в GTM и обеспечить большую гибкость! Перейдите к некоторым примерам, если вам нужно освежиться, или ознакомьтесь с некоторыми из этих других замечательных ресурсов: Допустим, я хочу отслеживать, когда пользователи наводят курсор на определенный элемент на одной из страниц моего сайта.Проверяя элемент с помощью панели инструментов разработчика Chrome (или инструментов веб-разработчика в Firefox), я могу видеть различные элементы и их атрибуты, которые я могу использовать для создания своего селектора. Например, на нашей странице рецептов GTM, если я хотел отслеживать наведения курсора на квадратные изображения в левой части каждого рецепта, я мог бы легко сделать это с помощью селектора CSS. Несколько основных селекторов: Поскольку изображения, на которые я хочу настроить таргетинг, имеют общий родительский элемент div с классом «resource-image», я могу использовать несколько основных селекторов для создания селектора CSS, который соответствует всем из них: дел.resource-image> img (соответствует любому элементу img, который является прямым потомком элемента div с классом «resource-image») Затем я добавил это к моей переменной в GTM, например: Например, это будет соответствовать нашим элементам изображения, а также любому элементу и с классом «recipe-dropdown»: div.resource-image> img, a.recipe-dropdown Наш тег слушателя ссылается на переменную, содержащую наши селекторы CSS. Если наведение курсора происходит над элементом, который соответствует нашим селекторам, пользовательское событие «hover» помещается в уровень данных. Вы должны увидеть это в режиме отладки! Теперь, когда у нас есть настраиваемое событие при наведении курсора, мы можем использовать его для создания триггеров и активации наших тегов. Во-первых, вам нужно создать для этого новую пользовательскую переменную, чтобы получить значение attribute.element из уровня данных: Затем создайте триггер настраиваемого события, который указывает наведение как событие и ваш селектор CSS. Например, следующий триггер запускает тег, когда пользовательское событие наведения курсора передается на уровень данных, И когда элемент, на который наведен курсор, совпадает с определенным селектором. Вы можете создать уникальный триггер для каждого селектора CSS, который вы добавили в свою переменную, что позволит вам активировать разные теги в зависимости от того, какие элементы наведены. при наведении курсора может дать представление о намерениях и помочь вам определить, на чем пользователи склонны сосредотачиваться или запутаться. В нашем примере мы можем проверять идею о том, что пользователи ошибочно принимают квадратные изображения за кнопки и часто сосредотачиваются на них, прежде чем нажимать другие ссылки.Это может побудить нас сделать эти изображения удобными для навигации или изменить наши призывы к действию на странице. Некоторые из вас, возможно, уже думают обо ВСЕХ зависаниях, которые вы хотите отслеживать, для всех элементов на вашем сайте. Но прежде чем вы начнете отслеживать наведение курсора на различные элементы на вашем сайте, спросите, почему вы хотите отслеживать это в первую очередь, и на какие вопросы эти данные могут помочь ответить. Как и в случае с отслеживанием взаимодействия с другими пользователями, должны быть цель и стратегия сбора данных о наведении, а также план их визуализации. Есть интересные идеи для отслеживания наведения на вашем собственном сайте? Поделитесь ими ниже! Пост «Получите рецепт: отслеживание наведения в Диспетчере тегов Google» впервые появился на LunaMetrics. —- Отправлено через my feedly newsfeed Среди многих вещей, которые нравятся в редизайне своего блога Верле, является то, как она выполняет эффекты наведения курсора для списков ссылок, например, тех, что в ее «одобренном» разделе. Вместо того, чтобы заставлять других пробираться через CSS Верле (вау, это настоящая таблица стилей!), Я подумал, что было бы полезно показать, как создать этот эффект «наведения блока». Во-первых, просмотрите мой пример эффекта наведения ссылки и наведите курсор на элементы списка, чтобы увидеть эффект наведения блока в действии. HTML довольно прост. Поскольку IE поддерживает только элемент Следовательно, нам нужно предоставить несколько дополнительных ловушек для стилизации контента. Мы делаем это с помощью тегов А теперь CSS. Чтобы эффект наведения блока работал должным образом в IE, нам нужно сделать ширину ссылки такой же, как у элемента списка. В противном случае эффект наведения будет отображаться только при наведении указателя мыши на текст внутри элемента списка. Это не обязательно самая семантическая разметка в мире, особенно с этими тегами В конце прошлого урока вы узнали, что на самом деле существуют разные типы тегов «A» (A: ссылка, A: активный и A: посещенный). Ну, есть еще один, который называется A: hover. Вы знаете, как когда вы наводите указатель мыши на ссылку на этой странице, она становится курсивной, меняет цвет, а ваша мышь превращается в значок изменения размера? Это все благодаря тегу A: hover.И он может делать намного больше. Давайте углубимся. Эффекты, которые вы собираетесь изучить, основаны на последних 2 уроках, поэтому, если вы еще этого не сделали, вернитесь назад. Эти очень классные эффекты действительно очень просты, но вы должны использовать таблицы стилей. По сути, вы определяете теги A: link, A: active и A :hibited одинаково, а тег A: hover - по-разному. Вот пример того, как это может выглядеть: Можете ли вы предсказать, что произойдет? Идите вперед, скопируйте и вставьте код на свою страницу, наведите указатель мыши на ссылку и посмотрите, был ли ваш прогноз верным.Если вы все сделали правильно, вы должны были увидеть, как ваши ссылки становятся синими, подчеркнутыми и выделяются курсивом, когда вы наводите на них курсор. Чтобы узнать, что еще вы можете сделать, читайте дальше. Перед тем, как продолжить, сделайте небольшое предостережение - этот раздел определенно попадет в категорию «просто потому, что вы можете это сделать, не означает, что вы должны». Некоторые эффекты, которые вы можете создать, заставляют другие объекты перемещаться по вашей странице. Это не хорошая вещь. Так что, если вы обычно используете шрифт 12 пикселей, а затем при наведении курсора мыши ваш шрифт меняется на шрифт 128 пикселей, все будет опущено и перемещено. Цвет - это простая вещь, которую вы можете изменить, как цвет шрифта, так и цвет фона для текста. Вам просто нужно установить «color:» и «background-color:» для A: hover, отличные от других тегов «A». Изменение цвета может привести к тому, что слова будут выделены, затемнены и т. Д. Подчеркнутый или любое другое оформление текста - это то, что вы можете легко включить / выключить, не оказывая отрицательного воздействия на остальную часть страницы. Полужирный и курсив - это еще две вещи, которые вы можете сделать, настроив тег A: hover, но здесь вам нужно начать осторожно. По мере изменения размеров все начинает меняться на вашей странице Вы можете изменить шрифт на что-то другое, но, опять же, некоторые шрифты могут отличаться по размеру от оригинала, что заставляет текст и изображения снова делать это злобное смещение. И, наконец, вы можете изменить размер ссылки, когда наводите на нее курсор.Я думаю, вам стоит попробовать это хотя бы раз в жизни, просто чтобы посмотреть, что происходит на самом деле. Все, что вам нужно сделать, это отрегулировать «font-size:» для тега «A: hover» иначе, чем для остальных тегов «A». Чтобы заставить курсор измениться, вы используете свойство "cursor:" в сочетании с тегом "A: hover". Чтобы увидеть различные варианты, которые вы можете использовать со свойством "cursor:", я собираюсь указать вам на веб-сайт HTML Goodies. У них есть действительно хорошая таблица на эту тему, и нет необходимости заново изобретать колесо.Просто прокрутите немного вниз, как только окажетесь там. Для вашей практики попробуйте создать ссылку, которая меняет цвета текста и цвета фона (например, если это был черный текст на белом фоне, он должен переключиться на белый текст на черном фоне), выделяется курсивом, а курсор меняется на вопросительный знак. Назад в СС T.O.C. Привязка к таблицам стилей disabled не являются интерактивными, то есть пользователи не могут сфокусироваться, навести на них курсор или щелкнуть их, чтобы вызвать всплывающую подсказку (или всплывающее окно).В качестве обходного пути вы захотите вызвать всплывающую подсказку из оболочки , в идеале сделанной с фокусировкой на клавиатуре, используя tabindex = "0" , и переопределить события указателя на отключенный элемент. Опции
data- , как в data-animation = "" . Имя Тип По умолчанию Описание анимация логическое правда Применить переход CSS постепенного изменения к всплывающей подсказке контейнер строка | элемент | ложь ложь контейнер: «тело» . Этот параметр особенно полезен тем, что позволяет вам размещать всплывающую подсказку в потоке документа рядом с элементом запуска, что предотвращает отрыв всплывающей подсказки от элемента запуска во время изменения размера окна. задержка Номер | объект 0 задержка: {"show": 500, "hide": 100} HTML логическое ложь всплывающей подсказки будут отображаться во всплывающей подсказке. Если false, метод jQuery text будет использоваться для вставки содержимого в DOM. размещение строка | функция 'верх'
Если указан auto , всплывающая подсказка будет динамически переориентирована., этот контекст установлен для экземпляра всплывающей подсказки. селектор строка | ложь ложь Если предусмотрен селектор, объекты всплывающей подсказки будут делегированы указанным целям. На практике это используется для включения всплывающих окон динамического HTML-контента.См. Этот и информативный пример. шаблон строка ' всплывающей подсказки будет вставлен в .tooltip-inner . .arrow станет стрелкой всплывающей подсказки..tooltip class и role = "tooltip" . название строка | элемент | функция ' заголовок отсутствует. и этой ссылкой , установленной на элемент, к которому прикреплена всплывающая подсказка. триггер строка 'hover focus' 'manual' указывает, что всплывающая подсказка будет запускаться программно с помощью методов .tooltip ('show') , .tooltip ('hide') и .tooltip ('toggle') ; это значение нельзя комбинировать с каким-либо другим триггером. «hover» сам по себе приведет к появлению всплывающих подсказок, которые не могут быть запущены с клавиатуры, и их следует использовать только при наличии альтернативных методов передачи той же информации для пользователей клавиатуры. смещение Номер | строка 0 Смещение всплывающей подсказки относительно цели. Для получения дополнительной информации обратитесь к документации по смещению Popper.js. резервное размещение строка | массив "перевернуть" Позволяет указать, какую позицию Поппер будет использовать при откате. Для получения дополнительной информации см.
Поведение Popper.js docs граница строка | элемент 'scrollParent' Граница ограничения переполнения всплывающей подсказки.Принимает значения 'viewport' , 'window' , 'scrollParent' или ссылку HTMLElement (только JavaScript). Для получения дополнительной информации см. Документацию PreventOverflow Popper.js. Атрибуты данных для отдельных всплывающих подсказок
Методы
Асинхронные методы и переходы
$ (). Подсказка (параметры) .tooltip ('показать') .bs.tooltip ). Это считается «ручным» запуском всплывающей подсказки. Всплывающие подсказки с заголовками нулевой длины никогда не отображаются.
$ ('# element'). Tooltip ('show') .tooltip ('hide') hidden.bs.tooltip ). Это считается «ручным» запуском всплывающей подсказки.
$ ('# element'). Tooltip ('hide') .tooltip ('toggle') shown.bs.tooltip или hidden.bs.tooltip ). Это считается «ручным» запуском всплывающей подсказки.
$ ('# element'). Tooltip ('toggle') .tooltip ('dispose') ), не могут быть уничтожены индивидуально для дочерних триггерных элементов.
$ ('# element'). Tooltip ('dispose') .tooltip ('enable')
$ ('# element'). Tooltip ('enable') .tooltip ('disable')
$ ('# element'). Tooltip ('disable') .tooltip ('toggleEnabled')
$ ('# element'). Tooltip ('toggleEnabled') .tooltip ('update')
$ ('# element'). Tooltip ('update') События
Тип события Описание показать.bs.tooltip Это событие запускается немедленно при вызове метода экземпляра Показан show ..bs.tooltip Это событие вызывается, когда всплывающая подсказка становится видимой для пользователя (ожидает завершения переходов CSS). hide.bs.tooltip Это событие запускается сразу после вызова метода экземпляра hide . hidden.bs.всплывающая подсказка Это событие вызывается, когда всплывающая подсказка перестает быть скрытой от пользователя (будет ожидать завершения переходов CSS). Insert.bs.tooltip Это событие запускается после события show.bs.tooltip , когда шаблон всплывающей подсказки был добавлен в DOM.
$ ('# myTooltip'). On ('hidden.bs.tooltip', function () {
// сделай что-нибудь…
}) Стиль наведения, фокуса и активного состояния по-разному
16 октября 2019: hover , : focus и : active заявляет одинаково в течение многих лет.Не могу вспомнить, когда я начала так укладывать. Вот код, который я всегда использую:
// Не лучший подход. Я объясню почему в этой статье
.selector {
&: навести,
&: фокус,
&: active {
// Стили здесь
}
}
: наведите курсор на . Стилизация состояний при наведении
: hover срабатывает, когда пользователь наводит курсор мыши на элемент. background-color (и / или color ) . Разница в состояниях не должна быть очевидной, потому что пользователи уже знают, что они на что-то ориентируются.
кнопка {
цвет фона: #dedede;
}
button: hover {
цвет фона: #aaa;
}
Состояния фокуса стилей
: фокус активируется, когда элемент получает фокус. Элементы могут получать фокус двумя способами: tabindex = "- 1" , но могут щелкнуть по нему. Щелчок вызывает фокусировку. . Больше информации здесь. ), фокус остается на ссылке, пока вы не уберете палец с мыши.Когда вы поднимаете палец, фокус перенаправляется в другое место, если href указывает на действительный идентификатор id на той же странице. background-color и color изменения часто сопровождают : hover , имеет смысл, что контуров или анимаций должны сопровождать : focus . , границы и box-shadow для создания удобных стилей фокуса.Я рассказываю, как это сделать, в разделе «Создание собственного стиля фокуса».
кнопка {
цвет фона: #dedede;
}
button: hover {
цвет фона: #aaa;
}
button: focus {
наброски: нет;
box-shadow: 0 0 0 3px lightskyblue;
}
Стилизация активных состояний
: active . : активный триггер срабатывает при взаимодействии с элементом . Здесь взаимодействие означает:
кнопка: активна {
цвет фона: # 333;
цвет границы: # 333;
цвет: #eee;
}
: активен на кнопках, но удерживание клавиши Enter - нет. Стили по умолчанию для ссылок
Взаимосвязь между активным и фокусным
: активны и : фокус состояние в Firefox и Chrome Активны только триггеры в Safari (проверено только на Mac): фокус остается на ссылке (если href ссылки не совпадает с идентификатором на той же странице). В Safari фокус снова возвращается к .: активны и : фокус состояние только в Chrome.Не запускает : фокус вообще в Safari и Firefox (Mac). Я писал об этом странном поведении здесь.
document.addEventListener ('click', event => {
if (event.target.matches ('button')) {
event.target.focus ()
}
})
Поведение кнопки в Safari после добавления фрагмента кода JavaScript выше.: активны во всех браузерах.Триггеры : фокус только на Chrome.: фокус на Safari и Firefox (Mac). : фокус остается на кнопке для других браузеров. Волшебное сочетание
.элемент: hover,
.element: active {
/ * Изменить цвет фона / текста * /
}
.element: focus {
/ * Показать схему / *
}
background-color (и / или color ). Они получают обратную связь. background-color (и / или color ). Они получают обратную связь. Немагическая (но может быть лучше) комбинация
: hover , : focus и : active отдельно.
Поведение кнопки в Safari, если вы стилизовали все три состояния. .element: hover {
/ * Изменить цвет фона / текста * /
}
.element: active {
/ * Еще одно изменение цвета фона / текста * /
}
.element: focus {
/ * Показать схему / *
}
Получить рецепт: отслеживание наведения в Диспетчере тегов Google
Получите рецепт: отслеживание наведения в Диспетчере тегов Google
// Блог Google Analytics, SEO, социальные сети и PPC »Блог Что такое рецепт слушателя наведения?
Как использовать рецепт слушателя наведения
1. Измените переменную {{Constant - Hover Listener CSS Selectors}}.
Примеры селектора CSS
.class
#id
element> element (прямой дочерний элемент)
element element (дочерний элемент)
Если вы хотите добавить несколько селекторов для таргетинга на различные типы элементов на вашем сайте, вы можете! Просто разделите их запятой в вашей переменной. Например, если бы у меня были другие элементы на моей странице, которые я также хотел бы отслеживать при наведении курсора, я мог бы просто добавить еще один селектор к той же переменной. 2. Убедитесь, что GTM отправляет пользовательские события "наведения курсора".
3.Создание триггеров с помощью настраиваемого события наведения
Почему мы заботимся об отслеживании зависания?
Отслеживание Как создать эффект наведения курсора на список ссылок
Пример
Код
: hover для ссылок, привязка ссылки должна обходить весь текст в элементе списка. и .
& lt; div & gt;
& lt; ul & gt;
& lt; li & gt; & lt; a title = "Text" href = "#" & gt; Первый заголовок ссылки
& lt; em & gt; Описание ссылки. & lt; / em & gt;
Дата публикации & lt; / a & gt; & lt; / li & gt;
& lt; li & gt; & lt; a title = "Text" href = "#" & gt; Первый заголовок ссылки
& lt; em & gt; Описание ссылки.& lt; / em & gt;
Дата публикации & lt; / a & gt; & lt; / li & gt;
& lt; / ul & gt;
& lt; / div & gt; #links ul {
тип-стиль-список: нет;
ширина: 400 пикселей;
}
#links li {
граница: 1px с точками # 999;
ширина границы: 1px 0;
маржа: 5px 0;
}
#links li a {
цвет: # 9;
дисплей: блок;
шрифт: полужирный, 120%, Arial, Helvetica, без засечек;
отступ: 5 пикселей;
текстовое оформление: нет;
}
* html #links li a {/ * заставить работать эффект наведения в IE * /
ширина: 400 пикселей;
}
#links li a: hover {
фон: #ffffcc;
}
#links a em {
цвет: # 333;
дисплей: блок;
шрифт: обычный 85% Verdana, Helvetica, без засечек;
высота строки: 125%;
}
#links a span {
цвет: # 125F15;
шрифт: обычный 70% Verdana, Helvetica, без засечек;
высота строки: 150%;
}
, но я не знаю, как еще вы бы это сделали.Если кто-нибудь знает более семантический метод, дайте мне знать. Дополнительная литература
A: hover
Начало работы
Как это работает
Бесконечные возможности
Курсоры
Практика
