Không , nó không hợp lệ HTML5 theo Tài liệu Spec HTML5 từ W3C :
Mô hình nội dung: Minh bạch , nhưng không được có hậu duệ nội dung tương tác .
Phần tử có thể được bao quanh toàn bộ đoạn văn, danh sách, bảng, v.v., thậm chí toàn bộ các phần, miễn là không có nội dung tương tác trong (ví dụ: các nút hoặc các liên kết khác).
Nói cách khác, bạn có thể lồng bất kỳ phần tử nào bên trong <a>
ngoại trừ các phần sau:
<a>
<audio>
(nếu thuộc tính điều khiển có mặt)
<button>
<details>
<embed>
<iframe>
<img>
(nếu thuộc tính usemap có mặt)
<input>
(nếu thuộc tính type không ở trạng thái ẩn )
<keygen>
<label>
<menu>
(nếu thuộc tính type ở trạng thái thanh công cụ )
<object>
(nếu thuộc tính usemap có mặt)
<select>
<textarea>
<video>
(nếu thuộc tính điều khiển có mặt)
Nếu bạn đang cố gắng có một nút liên kết đến một nơi nào đó, hãy bọc nút đó bên trong một <form>
thẻ như sau:
<form style="display: inline" action="http://example.com/" method="get">
<button>Visit Website</button>
</form>
Tuy nhiên, nếu <button>
thẻ của bạn được tạo kiểu bằng CSS và không giống như tiện ích của hệ thống ... Hãy tạo cho mình một ưu tiên, tạo một lớp mới cho <a>
thẻ của bạn và tạo kiểu giống như vậy.