До сьогодні мені цікаво, чому target="_blank"
не стала target="blank"
. Я впевнений, що і браузери це могли зрозуміти.
Чи є якісь історичні чи технічні причини цього рішення / специфікації?
До сьогодні мені цікаво, чому target="_blank"
не стала target="blank"
. Я впевнений, що і браузери це могли зрозуміти.
Чи є якісь історичні чи технічні причини цього рішення / специфікації?
Відповіді:
Якщо ви повинні були використовувати target="blank"
ваше посилання буде відкриватися в новому вікні / вікні. Однак є тонка різниця. Повторне натискання на посилання знову використовуватиме вікно, яке було відкрито вперше замість відкриття нового.
Це тому, що target
атрибут можна використовувати для більш ніж просто відкриття нового вікна. Він має чотири вбудовані значення, але також дозволяє вказати власну ціль. Якщо ви переглянете відповідну сторінку W3 Schools, вона відображає такі варіанти:
_blank
Відкриває зв'язаний документ у новому вікні чи вкладці_self
Відкриває зв'язаний документ у тому ж кадрі, на який було натиснуто (це за замовчуванням)_parent
Відкриває зв'язаний документ у батьківському кадрі_top
Відкриває зв'язаний документ у повному корпусі вікна<framename>
Відкриває зв'язаний документ у названому кадріБагато з цього не має сенсу, якщо ви трохи не зрозуміли кадри HTML. Використання HTML- <frameset>
тега дозволяє розділити вікно браузера на окремі розділи (кадри), кожен із яких має власну сторінку. Давши ім'я кадру та використовуючи target
атрибут у своїх посиланнях, можна контролювати, який кадр повинен відображати відповідний вміст.
Але є кілька додаткових правил для цільового атрибута, які браузери повинні застосовувати:
target="blank"
працює так, як це робиться.В основному немає жодних підстав для зміни чинної конвенції, оскільки _blank
це особливий випадок. Оригінальний тип кадрів більше не можна використовувати, але є й інші випадки, коли ви можете назвати об'єкти, з якими працює цільовий атрибут, наприклад, рамки кадрів, які є єдиними кадрами, вбудованими безпосередньо у сторінку. Зміна стандарту розбиває багато існуючих сторінок, не даючи жодної користі.
target="_blank"
атрибут не знадобився, але натомість ми могли просто додати знак до URL-адреси, наприклад, зірочку <a href="*https://www.stackoverflow.com">Stackoverflow</a>
. Це врятувало б стільки набравши :)
target
концепція, хоча вона все ще дозволена в HTML 5, як правило, вважається застарілою. w3.org/community/webed/wiki/HTML_links_-_lets_build_a_web (у7 Frames and popups — just say no
розділі)