Ссылка как кнопка
Сделайте ссылку, которая при наведении на неё курсора мыши меняла свой вид, как показано на рис. 1. Вверху показана исходная ссылка, внизу ссылка после наведения курсора.
Ссылка
Статьи по теме
Не выкладывайте свой код напрямую в комментариях, он отображается некорректно. Воспользуйтесь сервисом cssdeck.com или jsfiddle.net, сохраните код и в комментариях дайте на него ссылку. Так и результат сразу увидят.
Популярные задачи
- TEX
- Отступы между блоков
- Андроид в тени
- Ссылка как кнопка
- Вложенные списки
- Форма регистрации
- Объединение ячеек таблицы
- Обязательные поля формы
- Цвет и фон в таблице
- Асуанская плотина
- Батарейка
- Заголовки
О сайте
Основные разделы
HTML
CSS
Сайт
© 2002–2023 Влад Мержевич, по всем вопросам пишите по адресу vlad@htmlbook.ru
Как создать HTML кнопку, которая действует как ссылка
Есть много способов создания HTML кнопки, которая действует как ссылка, т.е., когда вы нажимаете на эту кнопку, она перенаправляется на указанный URL-адрес.
Вы можете выбрать один из следующих методов добавления ссылки на HTML кнопку.
Добавьте строчный onclick event
Пример
html> html> head> title>Заголовок документа title> head> body> button onclick="window.location.href = 'https://w3docs.com';">Click Here button> body> html>
Этот пример может не работать, если кнопка находится внутри тега .
Пример
html> html> head> title>Заголовок документа title> head> body> form> input type="button" onclick="window.location.href = 'https://www.w3docs.com';" value="w3docs"/> form> body> html>
Ссылки не будут работать, если JavaScript не используется, а поисковая система может проигнорировать такие ссылки.
Используйте атрибут action или formaction внутри элемента .
- атрибут action
Пример
html> html> head> title>Заголовок документа title> head> body> form action="https://www.w3docs.com/"> button type="submit">Click me button> form> body> html>
Для того, чтобы открыть ссылку в новой вкладке, добавьте атрибут target=»_blank» .
Пример
html> html> head> title>Заголовок документа title> head> body> form action="https://www.w3docs.com/" method="get" target="_blank"> button type="submit">Click me button> form> body> html>
Так как нет форм и данных, этот пример семантически не будет иметь смысла. Но данная разметка допустима.
- б. атрибут HTML5 formaction .
Пример
html> html> head> title>Заголовок документа title> head> body> form> button type="submit" formaction="https://www.w3docs.com">Click me button> form> body> html>
Атрибут formaction используется только для кнопок с type=”submit”. Так как этот атрибут является HTML5-specific, он может слабо поддерживаться в старых браузерах.
Добавьте ссылку в стиле HTML кнопки (используя CSS)
Пример
html> html> head> title>Заголовок документа title> style> .button < background-color: #FF4500; border: none; color: white; padding: 20px 34px; text-align: center; text-decoration: none; display: inline-block; font-size: 20px; margin: 4px 2px; cursor: pointer; > style> head> body> a href="https://www.w3docs.com/" class="button">Click Here a> body> html>
Так как требуется сложное стилевое оформление, этот метод может не работать в некоторых браузерах.
Как из ссылки сделать кнопку css
Когда мы говорим о кнопке, то кнопка может быть разной. К примеру у нас есть какая то кнопка в виде изображения.
Возьмем первую попавшуюся кнопку из интернета. кнопка — картинка. Давайте её здесь выведем. Если наведем мышку на данную кнопку. то ничего не будет происходить. поскольку данная кнопка не является ссылкой — это » картинка «
Далее. просто обернем нашу картинку тегом ссылки
И выведем результат:
Кнопка обернутая ссылкой:
И! У нас появилась рука( курсора с рукой) при наведении на кнопку + border снизу. Не совсем эстетично.
class=»example»
Уберем бордюр и text-decoration и продублируем с hover
border: unset !important;
text-decoration: none !important;
И давайте. навесим хоть какой-то эффект при наведении. пусть это будет «opacity»
Ну вот. примерно, какая кнопка у нас получилась с ссылкой.
Как сделать кнопку ссылкой в html
Если говорим о кнопке в html? а именно о теге button :
То и такую кнопку можно превратить в ссылку!
Кроме внешнего вида, но и сделать, чтобы она выполняла пряму роль ссылки — переход по ссылке.
Мы превратим кнопку в ссылку аналогичным способом, что рассматривали выше пунктом!
Но если мы выведем выше приведенную кнопку ссылкой, то получим. не пойми что. то ли кнопка. то ли ссылка:
Нам нужно навесить на такую кнопку-ссылку немного стилей, чтобы кнопка была похожа на ссылку.
И далее можно пойти двумя путями. 1). просто уничтожить стили кнопки 2). декорировать кнопку под ссылку!
Декорируем кнопку под ссылку:
Начнем с html кода кнопки-ссылки:
По умолчанию стили для ссылки, которые у меня на сайте : text-decoration отключен, добавлен border и продублируем с hover, кроме цвета и цвета бордюра. он прозрачный :
a <
color: #969696;
text-decoration: none;
border-bottom: 1px solid #b3b3b3;
>
a:hover <
color: #000000;
text-decoration: none;
border-bottom: 1px solid #b3b3b300;
>
Добавим стили к нашей кнопке или точнее удалим все признаки кнопки.
button.ex5 <
border: none;
background: none;
cursor: pointer;
>
Смотрим, что у нас получилось.
Результат превращения кнопки в ссылку:
И естественно, что при таком html коде, кнопка будет отрабатывать задачу ссылки, т.е. будет переходить по указанному адресу. Для того, чтобы проверить — работает ли кнопка-ссылка, нажмите по ниже идущей ссылке-кнопке:
Как сделать кнопку ссылкой в html №2
Следующий вариант копия предыдущего пункта, но только стили будут другие. превратим в ссылку кнопку, а стили кнопки уничтожим!
Для того, чтобы реализовать данный пример кнопки-ссылки нам потребуется html каркас:
Уничтожим поведение ссылки:
a.example, a.example:hover <
border: unset !important;
text-decoration: none !important;
>
Превратим кнопку button в ссылку, сначала уничтожим все признаки кнопки и добавим «cursor» и в самом низу добавим бордюр снизу.
button.ex <
border: unset;
background: unset;
cursor: pointer;
border-bottom: 1px solid;
>
И нарисуем поведение. через hover — удалим бордюр, сделаем цвет прозрачным:
Что лучше использовать: ссылки или кнопки
При вёрстке макета не всегда понятно, что перед нами — кнопка или ссылка. Внешне эти элементы могут быть очень похожи, но их функции различаются и браузер реагирует на них по-разному. Поэтому неправильный выбор может привести к ошибкам в работе веб-страницы.
Почему возникает проблема
Ссылка — это элемент навигации. Обычно она представляет собой текст, нажимая на который, пользователь переходит на другую страницу или перемещается к другому месту на текущей странице. То есть ссылка отвечает за взаимосвязь веб-ресурсов или разделов одного ресурса.
Ссылки создаются с помощью тега .
Кнопка — это функциональный элемент. Она отвечает за выполнение определённой функции: добавить в корзину, купить, отправить, проголосовать и т. д.
Для кнопок используют тег .
Проблемы возникают, когда внешне кнопка очень похожа на ссылку — текст без плашки, или ссылка напоминает кнопку — текст расположен на фоне прямоугольной плашки.
Что случится, если вместо ссылки сделать кнопку
Если URL-адрес обернуть не , а тегом , то при нажатии пользователя на правую кнопку мыши браузер предложит выполнить действия, которые положены при клике на кнопку. Адрес нельзя будет открыть в новой вкладке или отправить через контекстное меню.
Такая кнопка не позволит открыть страницу в новой вкладке и через комбинацию клавиш — Ctrl и левая кнопка мыши.
При наведении курсора на правильную ссылку её адрес появляется внизу окна браузера. URL-адрес, обёрнутый в , не отобразится.
Что произойдёт, если вместо кнопки сделать ссылку
При нажатии пользователем на ссылку правой кнопкой мыши браузер предлагает действия, которые можно совершить именно со ссылкой:
При наведении курсора на псевдоссылку внизу окна браузера появится не адрес, а javascript:; или АдресТекущейСтраницы/# .
Как определить элемент по макету
Конкретные указания часто прописывают в техническом задании к макету. В стайлгайде самого макета можно посмотреть состояния элемента.
У ссылки должны быть стили для состояния покоя, при наведения курсора :hover , в момент нажатия :focus , активного :active и иногда состояния, когда пользователь уже посещал эту страницу :visited .
У кнопки нет состояния :visited , зато есть состояние блока :disabled .
Однако рассчитывать только на макет не нужно. У ссылки может не быть :visited , а у блока :disabled — это может запутать.
Всё-таки кнопка или ссылка
Если дизайнер по каким-то причинам не отрисовал состояния вообще, то придётся руководствоваться одной логикой.
Ссылка
Кнопка
За что отвечает
Навигация, т. е. пользователь перемещается на другую часть страницы или на новую страницу.
Выполнение какой-либо функции без перехода на другую страницу — добавить в корзину, купить, отправить, проголосовать, войти и т. д.
Что видит пользователь
• При наведении курсора на ссылку внизу окна браузера возникает её адрес.
• Через меню по клику правой кнопкой мыши можно скопировать, отправить, открыть ссылку в новой вкладке.
• При наведении курсора на ссылку внизу окна браузера не отображается адрес.
• Через меню по клику правой кнопкой мыши нельзя скопировать адрес или поделиться им.
Пример
На макете отрисована фраза «Войти». Если клик по ней должен открывать окно для ввода регистрационных данных на этой же странице, это кнопка. Если при нажатии должна открываться отдельная страница для входа, это ссылка.
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.