Cho đến hôm nay tôi tự hỏi tại sao target="_blank"
không trở thành target="blank"
. Tôi chắc chắn các trình duyệt cũng có thể hiểu điều này.
Có bất kỳ lịch sử hoặc lý do kỹ thuật cho quyết định / đặc điểm kỹ thuật này?
Cho đến hôm nay tôi tự hỏi tại sao target="_blank"
không trở thành target="blank"
. Tôi chắc chắn các trình duyệt cũng có thể hiểu điều này.
Có bất kỳ lịch sử hoặc lý do kỹ thuật cho quyết định / đặc điểm kỹ thuật này?
Câu trả lời:
Nếu bạn đã sử dụng, target="blank"
liên kết của bạn sẽ mở trong một tab / cửa sổ mới. Tuy nhiên, có một sự khác biệt tinh tế. Nhấp vào liên kết một lần nữa sẽ sử dụng lại cửa sổ đã được mở lần đầu tiên thay vì mở một liên kết mới.
Điều này là do target
thuộc tính có thể được sử dụng nhiều hơn là chỉ mở một cửa sổ mới. Nó có bốn giá trị tích hợp nhưng cũng cho phép bạn chỉ định mục tiêu của riêng mình. Nếu bạn nhìn vào trang Trường học W3 có liên quan, nó sẽ hiển thị các tùy chọn sau:
_blank
Mở tài liệu được liên kết trong một cửa sổ hoặc tab mới_self
Mở tài liệu được liên kết trong cùng một khung khi nó được bấm (đây là mặc định)_parent
Mở tài liệu được liên kết trong khung cha_top
Mở tài liệu được liên kết trong toàn bộ cửa sổ<framename>
Mở tài liệu được liên kết trong một khung có tênPhần lớn điều này không có ý nghĩa gì trừ khi bạn hiểu một chút về khung HTML. Sử dụng <frameset>
thẻ HTML cho phép bạn chia cửa sổ trình duyệt thành các phần (khung) riêng lẻ với mỗi trang riêng. Bằng cách đặt tên cho khung và sử dụng target
thuộc tính trong các liên kết của bạn, có thể kiểm soát khung nào sẽ hiển thị nội dung có liên quan.
Nhưng có một số quy tắc bổ sung cho thuộc tính đích mà trình duyệt phải áp dụng:
target="blank"
hoạt động theo cách nó làm.Về cơ bản không có lý do để thay đổi quy ước hiện tại vì _blank
là một trường hợp đặc biệt. Loại khung ban đầu có thể không được sử dụng nhiều nữa nhưng có những trường hợp khác mà bạn có thể đặt tên các đối tượng mà thuộc tính đích làm việc với, ví dụ: iframe là các khung đơn được nhúng trực tiếp vào một trang. Thay đổi tiêu chuẩn sẽ phá vỡ nhiều trang hiện có mà không mang lại bất kỳ lợi ích nào.
target="_blank"
thuộc tính bổ sung sẽ không cần thiết nhưng thay vào đó, chúng tôi chỉ có thể thêm một dấu hiệu vào URL, ví dụ như dấu hoa thị <a href="*https://www.stackoverflow.com">Stackoverflow</a>
. Điều đó sẽ tiết kiệm rất nhiều việc gõ :)
target
khái niệm, trong khi vẫn được cho phép trong HTML 5, thường được coi là lỗi thời. w3.org/community/webed/wiki/HTML_links_-_lets_build_a_web (trong7 Frames and popups — just say no
phần)