Если ссылка является «расширенной» ссылкой, это будет делать почти то же самое, что и обычная ссылка, но более «удобным» способом - например, навигационной ссылкой, когда JavaScript включенстраница перезагрузит только «контентную» часть страницы и обновит адрес страницы с помощью HTML5 History API - тогда я бы просто использовал семантический класс, фактически описывающий ссылки, такие как «навигация»".
В случае, если они являются триггерами JavaScript, и они не будут работать, когда JavaScript отключен - я бы предложил вообще не использовать элемент a
.Из spec :
Если элемент a
имеет атрибут href
, то он представляет гиперссылку (гипертекстовую привязку).Если элемент a
не имеет атрибута href
, то этот элемент представляет собой заполнитель для того места, где в противном случае могла бы быть размещена ссылка, если бы она была релевантной.
Я считаю, что в большинстве случаев«триггеры действия» не совсем соответствуют описанию использования элемента a
.Поэтому я бы предложил использовать элемент span
, который будет стилизован таким образом, чтобы можно было предположить, что это триггер взаимодействияСнова цитируем spec :
Элемент span
ничего не значит сам по себе, но может быть полезен при использовании вместе с глобальными атрибутами, например, class
, lang
или dir
.Он представляет своих детей.
Еще одно предложение относительно этих триггеров: используйте эту строку кода (самое первое после <title>
в заголовке вашего документа), чтобы дать вашему html
element a class js
:
<script>document.documentElement.className = 'js';</script>
Затем в вашем CSS сделайте следующее:
/*
assuming that this is your mark-up for the pseudo-links:
<span class="action-trigger">Beautiful transition</span>
*/
.action-trigger {
display:none;
visibility:hidden;
}
.js .action-trigger {
display:inline;/* or whatever suits your styling of these elements */
visibility:visible;
}
Таким образом, когда JavaScript отключен, пользователи не будут видеть "псевдоссылки"это будет призыв к действию, но на самом деле не сработает.
UPD.Семантически, в некоторых случаях вы также можете использовать элементы отправки формы, такие как <button>
: например, вы можете инициировать отправку формы - все функции «голосование» / «симпатия» / «удаление» попадают в эту категорию.Что, когда JS отключен, действительно отправит эту форму, но когда JS включен, это вызовет действие на стороне вашего внутреннего API.