Menu

Thẻ title trong HTML: tiêu đề trang, độ dài và SEO

Phần tử <title> đặt tên cho trang trên tab trình duyệt, trong dấu trang và trong kết quả tìm kiếm. Tìm hiểu nó nằm ở đâu, nên dài bao nhiêu, khác gì với <h1> và thuộc tính title, và cách đổi nó bằng JavaScript.

Trang này có trình soạn thảo chạy trực tiếp. Sửa, chạy và xem đầu ra ngay lập tức.

Thẻ title nằm ở đâu

Mỗi trang cần đúng một phần tử <title> bên trong <head>. Chữ trong đó là tên trang mà trình duyệt hiển thị trên tab và dấu trang, và công cụ tìm kiếm thường hiển thị làm tiêu đề kết quả:

Bản thân title không bao giờ xuất hiện bên trong trang. Bản xem trước này cũng chạy bên trong trang tài liệu của Coddy, nên tab trình duyệt của bạn vẫn hiển thị tiêu đề của trang tài liệu; đoạn script nhỏ in ra những gì tab sẽ hiển thị nếu bạn mở ví dụ thành một tệp riêng. Sửa chữ trong <title> và dòng kết quả sẽ cập nhật.

Viết một title tốt

Title thường là thứ đầu tiên người ta đọc về trang của bạn, trong kết quả tìm kiếm hay trên một hàng tab. Vài quy tắc sau áp dụng cho hầu hết các trang:

  • Cụ thể và không trùng lặp. Mỗi trang trong website nên có title riêng mô tả đúng trang đó: "Chocolate Chip Cookies Recipe", không phải "Home" hay "Page 1".
  • Đặt từ quan trọng lên đầu. Tab thì hẹp và kết quả tìm kiếm cắt bớt title dài. Giữ cụm từ chính trong khoảng 50 đến 60 ký tự đầu.
  • Thêm tên website ở cuối, ngăn cách bằng | hoặc :, để chủ đề trang vẫn đứng trước.
  • Viết cho người đọc. Một title nhồi đầy từ khóa lặp lại trông như spam, và công cụ tìm kiếm có thể viết lại nó.

Tab mô phỏng này cắt title ở khoảng độ rộng của một tab thật. Thử một title ngắn hơn hoặc dài hơn:

Khi tên website nằm cuối, tab bị cắt vẫn cho thấy trang nói về gì. Đảo thứ tự ("Bake Club | How to...") thì mọi tab từ website của bạn sẽ bắt đầu bằng cùng hai từ.

Thẻ title, h1 và thuộc tính title

Vị tríHiển thị ởVai trò
<title>Trong <head>, một lầnTab, dấu trang, kết quả tìm kiếmĐặt tên cho trang
<h1>Trong <body>Trên trangTiêu đề chính nhìn thấy được
Thuộc tính title="..."Trên mọi phần tửTooltip khi rê chuộtGợi ý thêm về phần tử đó

Title và <h1> thường cùng ý nghĩa, nhưng title có thể viết cho việc tìm kiếm và kèm tên website, còn tiêu đề trên trang có thể ngắn hơn. Thuộc tính title thì không liên quan, dù trùng tên. Rê chuột lên từ được gạch chân:

Tooltip từ thuộc tính title không hiện trên màn hình cảm ứng và không phải lúc nào cũng được trình đọc màn hình đọc, nên đừng đặt thông tin quan trọng chỉ ở đó.

Title chỉ chứa chữ

Trình duyệt đọc mọi thứ giữa <title> và </title> như chữ thuần. Thẻ không được phân tích, nhưng tham chiếu ký tự như &amp; được giải mã, và các khoảng trắng liền nhau gộp lại thành một dấu cách:

Kết quả là Salt & Pepper <b>Bold?</b>: thực thể trở thành &, ba dấu cách trở thành một, còn các thẻ <b> giữ nguyên thành ký tự. Không thể in đậm hay nhấn mạnh trong title.

Đổi title bằng JavaScript

document.title vừa đọc được vừa gán được. Các ứng dụng web dùng nó để hiển thị số tin chưa đọc hoặc trạng thái hiện tại trên tab:

Trên một trang thật, tab trình duyệt thay đổi cùng lúc với tab mô phỏng ở đây. Công cụ tìm kiếm có chạy JavaScript có thể thấy title do script đặt, nhưng title viết sẵn trong HTML mới là lựa chọn đáng tin cậy cho mọi thứ cần được lập chỉ mục.

Lỗi thường gặp

  • Không có title. Trình duyệt dùng URL hoặc tên tệp thay thế, và trang thành HTML không hợp lệ. Thêm title cho mọi trang, đặt cạnh thẻ meta viewport trong template.
  • Mọi trang dùng cùng một title. Tab, dấu trang và kết quả tìm kiếm sẽ không thể phân biệt được.
  • Đặt <title> trong <body>. Trình duyệt vẫn dùng nó, nhưng chỗ của nó là <head>, và một số công cụ sẽ bỏ sót.
  • Hai phần tử <title>. Chỉ phần tử đầu tiên có tác dụng. Hãy xóa các phần tử còn lại.
  • Bắt đầu mọi title bằng tên website. Đặt chủ đề trang lên trước; tên website để cuối.

Câu hỏi thường gặp

Thẻ title trong HTML là gì?

<title> đặt tên cho trang. Trình duyệt hiển thị nó trên tab và trong dấu trang, còn công cụ tìm kiếm thường hiển thị nó làm dòng tiêu đề có thể nhấp của kết quả. Nó nằm trong <head> và chỉ chứa chữ.

Thẻ title nên dài bao nhiêu?

Công cụ tìm kiếm cắt bớt title dài theo độ rộng hiển thị, nên hãy đặt những từ quan trọng trong khoảng 50 đến 60 ký tự đầu. HTML không có giới hạn cứng, nhưng phần vượt quá có thể bị ẩn sau dấu ba chấm.

Thẻ title và h1 khác nhau thế nào?

<title> là metadata: nó đặt tên cho trang trên tab và kết quả tìm kiếm, và không hiển thị trong nội dung trang. <h1> là tiêu đề chính hiển thị trong body. Hai thứ thường nói điều tương tự, nhưng title có thể thêm tên website và được viết cho việc tìm kiếm.

Có thể đặt thẻ HTML bên trong thẻ title không?

Không. Phần tử title chỉ chứa chữ. Các thẻ bên trong được hiển thị nguyên văn, nên <title>A <b>B</b></title> cho ra tab ghi "A <b>B</b>". Tham chiếu ký tự như &amp; thì vẫn hoạt động.

Làm sao đổi tiêu đề trang bằng JavaScript?

Gán giá trị cho document.title, ví dụ document.title = '(3) Inbox'. Trình duyệt cập nhật tab ngay lập tức, đây là cách các ứng dụng web hiển thị số tin chưa đọc.

Thẻ title có giống thuộc tính title không?

Không. Phần tử <title> đặt tên cho cả trang. Thuộc tính title, dùng được trên gần như mọi phần tử, thêm một chú thích nhỏ (tooltip) hiện ra khi bạn rê chuột lên phần tử đó.

Hình minh họa các ngôn ngữ lập trình của Coddy

Học lập trình cùng Coddy

Bắt đầu