Чи правильно використовувати тег alt для прив’язного посилання, щось подібне
<a href="#" class="test" alt="Something" src="sfasfs" ></a>
Чи правильно використовувати тег alt для прив’язного посилання, щось подібне
<a href="#" class="test" alt="Something" src="sfasfs" ></a>
Відповіді:
На такі речі найкраще відповісти, переглянувши офіційну специфікацію:
перейдіть до специфікації: https://www.w3.org/TR/html5/
пошук " a
елемента": https://www.w3.org/TR/html5/text-level-semantics.html#the-a-element
встановіть прапорець "Атрибути вмісту", у якому перераховані всі дозволені атрибути для a
елемента:
- Глобальні атрибути
href
target
download
rel
hreflang
type
перевірте пов'язані "Глобальні атрибути": https://www.w3.org/TR/html5/dom.html#global-attributes
Як ви побачите, alt
атрибут заборонений у a
елементі.
Також ви помітили, що src
атрибут також не дозволений.
При перевірці вашого HTML , помилки , як вони повідомляють вам.
Зауважте, що вищезазначене стосується HTML5 , що є стандартом HTML W3C з 2014 року . У 2016 році HTML 5.1 став наступним стандартом HTML . Пошук дозволених атрибутів працює аналогічно. Ви побачите, що a
елемент може мати інший атрибут у HTML 5.1:rev
.
Ви можете знайти всі специфікації HTML (включаючи останній стандарт) у поточному статусі HTML W3C .
title
.
Для якорів слід використовувати замість заголовка. alt недійсний атрибут a. Дивіться http://w3schools.com/tags/tag_a.asp
"title" широко реалізується в браузерах. Спробуйте:
<a href="#" title="hello">asf</a>
title
невірно відповідно до специфікації HTML5 (навіть якщо більшість браузерів буде реалізовувати це).
Ні, alt
атрибут (це був би атрибут, а не тег) не дозволений для a
елемента в жодних специфікаціях або чернетках HTML. І, схоже, жоден браузер не визнається таким, що має якесь значення.
Це трохи таємниця, чому люди намагаються його використовувати, але ймовірне пояснення полягає в тому, що вони роблять це аналогічно alt
атрибуту дляimg
елементів, розраховуючи побачити підказку під час миші. У цьому є дві речі неправильно. По-перше, кожен елемент має свої атрибути, визначені у специфікаціях для кожного елемента. По-друге, відображення alt
атрибутів "підказок" у деяких стародавніх браузерах - це / химерність чи навіть помилка, а не щось, чого можна очікувати; alt
атрибут повинен бути представлений користувачеві , якщо і тільки якщо зображення не представлено, з якої - небудь причини.
Щоб створити "підказку", використовуйте title
замість цього атрибут або, ще краще, Google для "підказки CSS" і використовуйте підказки на основі CSS за вашим уподобанням (їх можна охарактеризувати як приховані "шари", які стають видимими при переході миші).
Ви повинні використовувати атрибут title для тегів прив’язки, якщо ви хочете застосувати описову інформацію так само, як і для атрибута alt. Атрибут заголовка дійсний на якорних тегах і не виконує іншої мети, крім надання інформації про пов’язану сторінку.
W3C рекомендує, щоб значення атрибута заголовка відповідало значенню заголовка пов'язаного документа, але це не є обов'язковим.
http://www.w3.org/MarkUp/1995-archive/Elements/A.html
Крім того, і, ймовірно, вигідніше, ви можете використовувати атрибут доступності ARIA aria-label
(не плутати з ним aria-labeledby
). aria-label
виконує ту саму функцію, що і атрибут alt для зображень, але для елементів, що не містять зображення, і включає деяку міру оптимізації з моменту оптимізації для читачів екрану.
http://www.w3.org/WAI/GL/wiki/Using_aria-label_to_provide_labels_for_objects
Якщо ви хочете описати тег прив’язки, зазвичай доцільно використовувати тег rel або rev, але обмежено конкретними значеннями, вони не повинні використовуватися для людських читаних описів.
Rel служить для опису зв’язку пов'язаної сторінки з поточною сторінкою. (наприклад, якщо пов'язана сторінка є наступною у логічному ряду, це буде rel = next)
Атрибут rev по суті є зворотним співвідношенням атрибута rel. Rev описує відношення поточної сторінки до пов’язаної сторінки.
Список дійсних значень можна знайти тут: http://microformats.org/wiki/existing-rel-values
Я використав заголовок, і це спрацювало!
Атрибут title дає назву посилання. За одним винятком, це суто дорадчий характер. Значення - текст. Виняток становить посилання на аркуші стилів, де атрибут заголовка визначає альтернативні набори аркушів стилів.
<a class="navbar-brand" href="http://www.alberghierocastelnuovocilento.gov.it/sito/index.php" title="sito dell'Istituto Ancel Keys">A.K.</a>
Я здивований, коли всі відповіді, що вказують на використання alt
атрибута в a
тегу, не вірні . Це абсолютно неправильно.
Html не блокує використання жодних атрибутів:
<a your-custom-attribute="value">Any attribute can be used</a>
Якщо ви запитаєте, чи правильно використовувати alt
атрибут семантично, a
то я скажу:
НЕМАЄ. Він використовується для встановлення опису зображення <img alt="image description" />
.
Це питання того, що ви зробите з атрибутами. Ось приклад:
a::after {
content: attr(color); /* attr can be used as content */
display: block;
color: white;
background-color: blue;
background-color: attr(color); /* This won't work */
display: none;
}
a:hover::after {
display: block;
}
[hidden] {
display: none;
}
<a href="#" color="red">Hover me!</a>
<a href="#" color="red" hidden>In some cases, it can be used to hide it!</a>
Знову ж таки, якщо ви запитаєте, чи правильно використовувати семантичний атрибут, то я скажу:
Ні. Використовуйте data-*
атрибути для його смислового використання.
Ой, питання було задано у 2013 році.
title
атрибут у атрибутахa
Global, чи правильно використовувати такийtitle
атрибут уa
чи ні?