У Вікіпедії активно використовується ця функція:
<a href="#History">[...]</a>
<span class="mw-headline" id="History">History</span>
І Вікіпедія працює для всіх, тому я б почувався безпечним дотримуватися цієї форми.
Крім того, не забувайте, ви можете використовувати це не тільки з прольотами, але і з divs або навіть клітинками таблиці, і тоді у вас є доступ до: target pseudo-class на елементі. Просто слідкуйте за тим, щоб не змінювати ширину, як, наприклад, жирним текстом, тому що переміщується вміст навколо, що турбує.
Іменні якіри - мій голос - уникнути:
- "Імена та ідентифікатори знаходяться в одному просторі імен ..." - Два атрибути з однаковим простором імен просто божевільні. Скажімо, вже застарілі.
- "Прив’язуючі елементи без href atribute" - І знову ж таки, характер елемента (гіперпосилання чи ні) визначається тим, що має атрибут ?! Подвійний божевільний. Здоровий глузд говорить уникати цього взагалі.
- Якщо ви коли-небудь стиліть якір без псевдокласу, стайлінг стосується кожного. У CSS3 ви можете обійти це за допомогою селекторів атрибутів (або однакового стилю для кожного псевдокласу), але все-таки це вирішення. Зазвичай це не виходить, оскільки ви вибираєте кольори за псевдокласом, а підкреслення, яке присутнє за замовчуванням, його має лише сенс видалити, що робить його таким же, як і інший текст. Але ви коли-небудь вирішите зробити свої посилання жирними, це спричинить проблеми.
- Netscape 4 може не підтримувати функцію id, але все ж невідомий атрибут не спричинить жодних проблем. Це те, що для мене викликало сумісність.
http://example.com#foo
(так без / до #)