Hướng dẫn sử dụng thẻ img trong HTML từ cơ bản đến nâng cao

Trong thiết kế web hiện đại, nội dung trực quan ngày càng đóng vai trò then chốt trong việc giữ chân người dùng và cải thiện thứ hạng tìm kiếm. Thẻ img trong HTML chính là công cụ cốt lõi để bạn chèn hình ảnh vào trang web một cách chuẩn chỉnh. Tuy nhiên, không chỉ đơn giản là giúp hiển thị hình ảnh, việc sử dụng đúng cú pháp, thuộc tính và tối ưu thẻ img còn có thể tác động mạnh mẽ đến hiệu suất website và chiến lược SEO.
 

Hướng dẫn sử dụng thẻ img trong HTML từ cơ bản đến nâng cao
 

Thẻ img là gì?

Thẻ img là một thẻ HTML dùng để hiển thị hình ảnh trên trang web. Khi bạn muốn chèn một bức ảnh vào trong nội dung trang web, thẻ img chính là công cụ cần sử dụng.

Về cơ bản, thẻ img trong HTML không phải là một container (vùng chứa) cho hình ảnh, mà giống như một liên kết hoặc một chỉ dẫn cho trình duyệt web biết rằng: "Này, hãy tải và hiển thị bức ảnh này tại vị trí này!".
 

Thẻ img là gì?
 

Cú pháp cơ bản của thẻ img trong HTML

Khác với nhiều thẻ HTML khác, img là thẻ tự đóng, nghĩa là nó không cần có thẻ đóng < /img > và hoạt động dựa trên các thuộc tính đi kèm.

Cú pháp cơ bản của thẻ img trong HTML trông như thế này:

< img src="duong-dan-den-anh" alt="mo-ta-anh" >

Trong đó:

- < img >: Đây là tên của thẻ, cho trình duyệt biết bạn muốn nhúng một hình ảnh.

- src (source): Là thuộc tính bắt buộc, dùng để chỉ đường dẫn tới tệp hình ảnh bạn muốn hiển thị. Có thể là đường dẫn tương đối (ảnh trong cùng thư mục) hoặc tuyệt đối (ảnh từ URL bên ngoài). Chẳng hạn:

  + Nếu bạn có một ảnh tên logo.png nằm cùng thư mục với tệp HTML, bạn sẽ viết src="logo.png".

  + Nếu ảnh nằm trong thư mục images cùng cấp: src = "images/logo.png".

  + Nếu ảnh nằm trên một website khác (đường dẫn tuyệt đối): src = "https://example.com/images/banner.jpg".

- Alt (alternative text): Là văn bản mô tả ảnh sẽ hiển thị khi ảnh không tải được, đồng thời giúp cải thiện SEO và hỗ trợ người dùng khiếm thị. Chẳng hạn, thay vì alt="anh", hãy viết alt="Logo công ty ABC màu xanh dương".

Ví dụ: 

< img src="images/logo.png" alt="Logo công ty Phuong Nam Vina" >

Trong ví dụ này:

- Ảnh nằm trong thư mục con tên là images.

- Tên ảnh là logo.png.

- Nếu ảnh không hiện, trình duyệt sẽ hiển thị dòng chữ "Logo công ty Phuong Nam Vina".

HTML image tag là gì?

Các thuộc tính của thẻ img trong HTML

Trong HTML, thẻ img không chỉ đơn giản dùng để chèn hình ảnh vào trang web, mà còn đi kèm nhiều thuộc tính quan trọng giúp kiểm soát cách ảnh hiển thị, tối ưu tốc độ tải trang, hỗ trợ người dùng và cải thiện SEO. Việc hiểu rõ các thuộc tính của thẻ img trong HTML sẽ giúp bạn xây dựng những website trực quan, chuyên nghiệp và thân thiện với mọi thiết bị.

 

Thuộc tính

Chức năng

Bắt buộc

Giá trị điển hình

Lưu ý quan trọng

Src

Đường dẫn đến hình ảnh cần hiển thị

image.jpg

images/logo.png

https://example.com/pic.webp

Luôn đảm bảo đường dẫn chính xác.

Alt

Văn bản thay thế mô tả nội dung hình ảnh.

Một chú mèo con đang ngủ

Logo công ty X

Cực kỳ quan trọng cho SEO và khả năng tiếp cận (Accessibility).

Width

Chiều rộng hiển thị của hình ảnh.

Không

800px, 100%

Nên dùng cùng height để ngăn ngừa Layout Shift.

Height

Chiều cao hiển thị của hình ảnh.

Không

400px, auto

Nên dùng cùng width để ngăn ngừa Layout Shift.

Title

Văn bản hiển thị khi rê chuột qua ảnh (tooltip).

Không

Ảnh minh họa đẹp

Chủ yếu mang tính trang trí.

Loading

Chiến lược tải hình ảnh.

Không

lazy, eager, auto

Sử dụng lazy để cải thiện tốc độ tải trang ban đầu bằng cách chỉ tải ảnh khi cần thiết.

Srcset

Danh sách các nguồn ảnh thay thế cho các độ phân giải/kích thước khác nhau.

Không

small.jpg 480w, large.jpg 1200w

Hỗ trợ hiển thị hình ảnh tối ưu trên nhiều thiết bị (Responsive Images), tiết kiệm băng thông.

Sizes

Mô tả kích thước ảnh trên các viewport khác nhau (dùng với srcset có w).

Không

(max-width: 600px) 100vw, 50vw

Giúp trình duyệt lựa chọn ảnh phù hợp nhất từ srcset.

Crossorigin

Kiểm soát việc tải ảnh từ các tên miền khác (CORS).

Không

anonymous, use-credentials

Quan trọng khi thao tác ảnh bằng JavaScript hoặc dùng CDN.

Ismap

Đánh dấu ảnh là bản đồ hình ảnh phía máy chủ.

Không

(không giá trị)

Ít được sử dụng hiện nay.

Usemap

Liên kết ảnh với bản đồ hình ảnh phía máy khách (< map >).

Không

#mymap

Tạo các khu vực nhấp được trên ảnh mà không cần gửi dữ liệu đến máy chủ.

 

Hướng dẫn sử dụng thẻ img hiệu quả cho hiệu suất SEO

Hình ảnh là một phần không thể thiếu của mọi website hiện đại. Chúng giúp truyền tải thông điệp, tăng tính thẩm mỹ và giữ chân người dùng. Tuy nhiên, nếu không được sử dụng đúng cách, hình ảnh có thể làm chậm website của bạn, ảnh hưởng tiêu cực đến trải nghiệm người dùng và thứ hạng SEO. Dưới đây là những cách tối ưu HTML image tag giúp bạn tăng hiệu suất SEO một cách toàn diện.

1. Chèn ảnh từ thư mục nội bộ

Việc lưu trữ hình ảnh trực tiếp trên máy chủ website giúp kiểm soát tốt hơn tốc độ tải trang và chất lượng hiển thị. Để chèn ảnh từ thư mục nội bộ, bạn nên đặt ảnh trong một thư mục riêng (ví dụ: images/, assets/) và gọi bằng đường dẫn tương đối. 

- Ảnh cùng thư mục: < img src="logo.png" alt="Logo công ty ABC" >.

- Ảnh trong thư mục con: Nếu bạn có một thư mục images chứa ảnh, đặt cùng cấp với file HTML. Chẳng hạn < img src="images/banner.jpg" alt="Banner quảng cáo sản phẩm mới" >.

- Ảnh ở thư mục cấp trên: Nếu ảnh nằm ở thư mục cha của file HTML. < img src="../icons/home-icon.svg" alt="Biểu tượng trang chủ" >.

Việc mọi tài nguyên nằm trong dự án giúp việc phát triển và triển khai dễ dàng hơn. Bên cạnh đó, chèn ảnh từ thư mục nội bộ sẽ giúp bạn kiểm soát hoàn toàn từ kích thước, định dạng ảnh trực tiếp và không phụ thuộc vào tốc độ của máy chủ bên ngoài.
 

HTML image tag
 

2. Chèn ảnh từ URL bên ngoài

Đôi khi, bạn cần nhúng ảnh từ một nguồn bên ngoài, ví dụ như từ một CDN (Content Delivery Network), một trang mạng xã hội hoặc một website khác mà bạn có quyền sử dụng ảnh.

Để chèn ảnh từ nguồn bên ngoài, bạn cần sử dụng đường dẫn tuyệt đối (full URL) trong thuộc tính src. Ví dụ:

< img src="https://images.unsplash.com/photo-1549429402-127e99767295" alt="Cà phê latte art trên bàn gỗ" >

Lưu ý:

- Đảm bảo bạn có quyền sử dụng hình ảnh đó để tránh các vấn đề về bản quyền.

- Tốc độ tải của ảnh phụ thuộc vào máy chủ chứa ảnh đó. Nếu máy chủ chậm, ảnh của bạn cũng sẽ tải chậm.

- Nếu nguồn ảnh bên ngoài bị xóa hoặc ngừng hoạt động, ảnh trên website của bạn cũng sẽ biến mất.

- Khi tải ảnh từ tên miền khác để thao tác bằng JavaScript (ví dụ: vẽ lên < canvas >), hãy thêm thuộc tính crossorigin="anonymous" để tránh lỗi CORS.

3. Đặt tên tệp hình ảnh và alt text chuẩn SEO

Tên file ảnh và alt text có ý nghĩa lớn đối với SEO hình ảnh, nó cung cấp ngữ cảnh cho công cụ tìm kiếm, giúp chúng hiểu ảnh của bạn là gì và lập chỉ mục hiệu quả hơn. Đây là những yếu tố quan trọng nhất của SEO hình ảnh, vì vậy bạn nên:

- Đặt tên ảnh bằng từ khóa có dấu gạch ngang (-) để phân tách từ, ví dụ: banh-trung-thu-nhan-dau-xanh.jpg

- Viết alt text như thể bạn đang mô tả ảnh cho một người không thể nhìn thấy nó. Ví dụ: alt="Bánh trung thu nhân đậu xanh truyền thống"

- Dùng tiếng Việt không dấu hoặc tiếng Anh nếu hướng đến quốc tế.

- Tránh tên ảnh chung chung như image1.jpg, pic.png,.…

- Nên dùng chữ thường để tránh lỗi phát sinh trên các hệ điều hành khác nhau.

- Nếu ảnh hoàn toàn chỉ để trang trí và không truyền tải thông tin gì (ví dụ: một đường viền), bạn có thể để alt="" (chuỗi rỗng) để trình đọc màn hình bỏ qua.
 

Thẻ img
 

4. Sử dụng srcset để responsive ảnh

Trong thời đại đa thiết bị, việc hình ảnh hiển thị đẹp và tối ưu trên mọi màn hình là cực kỳ quan trọng và srcset là giải pháp mạnh mẽ cho việc này. Cụ thể, nếu bạn chỉ dùng một ảnh lớn cho mọi thiết bị, người dùng di động sẽ phải tải một tệp nặng không cần thiết, làm chậm trang. Ngược lại, ảnh quá nhỏ sẽ bị vỡ nét trên màn hình lớn. Lúc này, srcset cho phép bạn cung cấp nhiều phiên bản của cùng một ảnh với các kích thước khác nhau. Trình duyệt sẽ tự động chọn phiên bản phù hợp nhất dựa trên kích thước màn hình, độ phân giải và mật độ pixel của thiết bị người dùng.

Ví dụ

< img src="anh-mac-dinh.jpg"

     srcset="anh-nho.jpg 480w,

             anh-trung-binh.jpg 800w,

             anh-lon.jpg 1200w"

     sizes="(max-width: 600px) 100vw,

            (max-width: 1200px) 50vw,

            33vw"

     alt="Mô tả ảnh responsive" >

5. Tối ưu tốc độ tải trang với thuộc tính lazy loading

Theo mặc định, trình duyệt sẽ cố gắng tải tất cả hình ảnh trên trang cùng lúc. Nếu trang của bạn có nhiều ảnh ở cuối trang, việc tải chúng ngay lập tức là không cần thiết và làm chậm thời gian hiển thị nội dung chính. 

Lúc này, thuộc tính loading="lazy" cho trình duyệt biết rằng: "Này, đừng tải ảnh này vội. Chỉ khi người dùng cuộn đến gần nó thì hẵng tải." Việc này giúp giảm thời gian tải ban đầu (Largest Contentful Paint - LCP), tiết kiệm băng thông và giảm tải cho máy chủ.

Ví dụ: < img src="images/banner.jpg" alt="Banner sản phẩm" loading="lazy" >.

6. Đặt kích thước width và height trong HTML

Nếu bạn không chỉ định width và height cho ảnh trong HTML image tag, trình duyệt sẽ không biết ảnh chiếm bao nhiêu không gian trước khi nó được tải. Điều này dẫn đến hiện tượng Layout Shift (CLS) – các phần tử trên trang bị "giật" và sắp xếp lại khi ảnh tải xong, gây khó chịu cho người dùng và bị đánh giá thấp bởi Google. Do đó, hãy luôn khai báo width và height với giá trị thực của ảnh trong thuộc tính HTML. 

Ví dụ: < img src="my-image.jpg" alt="Mô tả ảnh" width="800" height="600" >.
 

Thẻ img trong HTML
 

7. Chọn định dạng hình ảnh phù hợp

Việc chọn đúng định dạng tệp ảnh là một yếu tố then chốt ảnh hưởng đến dung lượng và chất lượng.

- JPEG/JPG: Tốt nhất cho ảnh chụp (ảnh có nhiều màu sắc và độ chuyển màu phức tạp). Nó sử dụng nén mất dữ liệu (lossy compression), nghĩa là một phần dữ liệu bị loại bỏ để giảm kích thước file, nhưng thường không nhận thấy bằng mắt thường.

- PNG: Tốt nhất cho đồ họa, logo, ảnh có nền trong suốt, hoặc ảnh có ít màu sắc. Nó sử dụng nén không mất dữ liệu (lossless compression), giữ nguyên chất lượng ảnh nhưng kích thước file thường lớn hơn JPEG.

- GIF: Dành riêng cho ảnh động hoặc các biểu tượng rất nhỏ, ít màu. Chất lượng kém và không phù hợp cho ảnh tĩnh lớn.

- WebP: Định dạng thế hệ mới của Google. Hỗ trợ cả nén mất dữ liệu và không mất dữ liệu, thường cho ra kích thước file nhỏ hơn đáng kể (từ 25-35%) so với JPEG và PNG mà vẫn giữ được chất lượng tương đương. Đây là định dạng được khuyến khích sử dụng hàng đầu hiện nay.

- AVIF: Định dạng mới hơn WebP, có tiềm năng nén tốt hơn nữa. Tuy nhiên, mức độ hỗ trợ trình duyệt hiện tại chưa rộng rãi bằng WebP.

Lưu ý: Để đảm bảo tương thích với các trình duyệt cũ không hỗ trợ WebP/AVIF, bạn nên sử dụng thẻ < picture > để cung cấp nhiều định dạng.

8. Tối ưu dung lượng ảnh

Một hình ảnh không được nén có thể nặng vài MB, gây tốn tài nguyên và thời gian tải. Do đó, bạn hãy giảm dung lượng file xuống mức thấp nhất có thể mà vẫn đảm bảo chất lượng hình ảnh không bị ảnh hưởng đáng kể đến trải nghiệm người dùng.

Một số công cụ nén ảnh trực tuyến miễn phí:

- TinyPNG / TinyJPG: Nén ảnh PNG và JPEG rất hiệu quả mà vẫn giữ chất lượng tốt.

- Compressor.io: Hỗ trợ nhiều định dạng và tùy chọn nén.

- Squoosh: Một công cụ mạnh mẽ, cho phép bạn điều chỉnh nhiều thông số nén và xem trước kết quả.

9. Thêm chú thích ảnh nếu phù hợp

Caption không phải là một trong các thuộc tính của thẻ img trong HTML, nhưng nó là một yếu tố quan trọng đi kèm với hình ảnh. Đây là đoạn văn bản nằm ngay bên dưới hoặc bên cạnh hình ảnh, cung cấp thông tin bổ sung, giải thích hoặc chú thích cho ảnh.

Để thêm chú thích ảnh, bạn hãy dùng thẻ figcaption đi kèm figure để mô tả hoặc dẫn giải cho ảnh, giúp tăng giá trị nội dung và trải nghiệm người đọc.

Ví dụ:

< figure >

  < img src="historical-building.jpg" alt="Tòa nhà Quốc hội ở Budapest, Hungary" >

  < figcaption>Hình 1: Tòa nhà Quốc hội Hungary nhìn từ sông Danube.

< /figure >
 

Img HTML

 

Các lỗi phổ biến khi dùng thẻ img HTML và cách khắc phục

Việc sử dụng thẻ img HTML hiệu quả đòi hỏi sự tỉ mỉ và hiểu biết về các yếu tố ảnh hưởng đến hiệu suất và SEO. Do đó, hãy biến việc kiểm tra các lỗi dưới đây thành thói quen mỗi khi bạn làm việc với hình ảnh.

1. Lỗi ảnh không hiển thị (Broken image)

Đây là lỗi phổ biến nhất và dễ nhận thấy nhất, bạn thấy một biểu tượng ảnh bị hỏng (thường là một hình vuông nhỏ với biểu tượng gạch chéo hoặc chữ "x") thay vì bức ảnh mong muốn.

Nguyên nhân

- Bạn đã viết sai chính tả đường dẫn, ảnh không tồn tại ở vị trí đó hoặc ảnh đã bị di chuyển/xóa khỏi máy chủ.

- Ảnh chưa được tải lên máy chủ.

- Tên file ảnh trên host không khớp với tên bạn đặt trong code.

- Hệ điều hành trên máy chủ (ví dụ: Linux) thường phân biệt chữ hoa/thường trong tên file, trong khi máy tính của bạn (ví dụ: Windows) có thể không. image.JPG khác với image.jpg.

Cách khắc phục

- Kiểm tra kỹ đường dẫn src, đảm bảo từng ký tự, dấu gạch chéo đều chính xác.

- Kiểm tra xem file ảnh có thực sự tồn tại ở đường dẫn mà bạn đã chỉ định trên máy chủ hay không.

- Đảm bảo tên file trong code khớp hoàn toàn với tên file trên máy chủ, bao gồm cả chữ hoa/thường và phần mở rộng (đuôi file như .jpg, .png).

- Dù không trực tiếp sửa lỗi ảnh bị hỏng, việc có alt text tốt sẽ giúp người dùng và công cụ tìm kiếm hiểu được nội dung ảnh ngay cả khi nó không hiển thị.
 

Chèn ảnh HTML
 

2. Lỗi ảnh quá lớn hoặc quá nhỏ

Ảnh hiển thị không đúng kích thước mong muốn, hoặc quá lớn làm vỡ bố cục hoặc quá nhỏ khiến người dùng không nhìn rõ.

Nguyên nhân:

- Không đặt thuộc tính width và height nên trình duyệt sẽ hiển thị ảnh theo kích thước gốc.

- Kích thước bạn đặt cho width và height trong HTML không phù hợp với không gian hiển thị hoặc tỷ lệ khung hình của ảnh bị sai.

- Thiếu CSS responsive khiến ảnh không co giãn theo kích thước màn hình, đặc biệt trên thiết bị di động.

Cách khắc phục:

- Luôn đặt width và height trong HTML.

- Sử dụng CSS để điều chỉnh và responsive nhằm kiểm soát kích thước hiển thị linh hoạt.

- Đảm bảo tỷ lệ width/height bạn đặt khớp với tỷ lệ ảnh gốc để tránh ảnh bị méo. Nếu bạn chỉ đặt width và height: auto trong CSS, trình duyệt sẽ tự động duy trì tỷ lệ.

3. Tốc độ tải trang chậm

Trang web của bạn tải rất lâu, đặc biệt là khi có nhiều hình ảnh. Đây là một trong những lỗi ảnh hưởng nghiêm trọng nhất đến trải nghiệm người dùng và SEO.

Nguyên nhân:

- Dung lượng file ảnh quá lớn.

- Sử dụng định dạng ảnh không tối ưu.

- Không sử dụng lazy loading khiến trình duyệt tải tất cả ảnh cùng lúc, kể cả ảnh ở cuối trang.

- Không dùng ảnh responsive (srcset) dẫn đến người dùng di động phải tải ảnh có kích thước lớn dành cho desktop.

- Máy chủ ảnh quá xa người dùng, hoặc quá tải.

Cách khắc phục:

- Luôn nén ảnh trước khi tải lên web. Sử dụng các công cụ như TinyPNG, Compressor.io, Squoosh.

- Chọn định dạng phù hợp như WEBP, AVIF, JPEG, PNG.

- Thêm loading="lazy" cho các ảnh không hiển thị ngay khi trang tải.

- Sử dụng srcset và sizes cho ảnh responsive.

- Cân nhắc dùng CDN để phân phối ảnh từ các máy chủ gần người dùng để tăng tốc độ.
 

Các thuộc tính của thẻ img trong HTML
 

Thẻ img trong HTML không chỉ là công cụ giúp chèn hình ảnh vào website mà còn là yếu tố quan trọng góp phần nâng cao trải nghiệm người dùng và hiệu quả SEO nếu được sử dụng đúng cách. Qua việc hiểu rõ cú pháp, thuộc tính và cách tối ưu thẻ img HTML, bạn sẽ dễ dàng tạo ra những trang web hấp dẫn, thân thiện với cả người truy cập lẫn công cụ tìm kiếm. Đừng quên áp dụng các mẹo và tránh những lỗi phổ biến mà Phương Nam Vina đã chia sẻ, để mỗi bức ảnh không chỉ đẹp mắt mà còn thật sự có giá trị với website của bạn!

Tham khảo thêm:

icon thiết kế website Padding là gì? Margin là gì? Phân biệt padding và margin

icon thiết kế website Meta tag là gì? Các thẻ meta trong HTML quan trọng nhất

icon thiết kế website Thẻ em trong HTML là gì? Cách sử dụng và lưu ý quan trọng

Bài viết mới nhất

RSS là gì? Nguyên lý hoạt động, lợi ích và cách sử dụng RSS

RSS là gì? Nguyên lý hoạt động, lợi ích và cách sử dụng RSS

RSS Feed không chỉ giúp người đọc dễ dàng theo dõi nội dung mà còn là giải pháp hiệu quả cho nhà phát triển nội dung, blogger và các doanh nghiệp.

Website YMYL là gì? Cách nhận diện và tối ưu YMYL websites

Website YMYL là gì? Cách nhận diện và tối ưu YMYL websites

Các YMYL websites thường liên quan đến tiền bạc, sức khỏe, pháp lý,... yêu cầu nội dung chính xác, minh bạch, chuyên sâu và được kiểm chứng rõ ràng.

Meta tag là gì? Các thẻ meta trong HTML quan trọng nhất

Meta tag là gì? Các thẻ meta trong HTML quan trọng nhất

Thẻ meta trong HTML giúp cung cấp thông tin quan trọng về web cho trình duyệt và công cụ tìm kiếm, tối ưu SEO và nâng cao trải nghiệm người dùng.

Google Pagerank là gì? Vai trò, cơ chế hoạt động của Pagerank

Google Pagerank là gì? Vai trò, cơ chế hoạt động của Pagerank

Ra đời từ những năm đầu sơ khai Internet, thuật toán PageRank là nền tảng cốt lõi giúp Google đánh giá, xếp hạng và xác định độ uy tín trang web.

Technical SEO là gì? Tầm quan trọng và các yếu tố cần tối ưu

Technical SEO là gì? Tầm quan trọng và các yếu tố cần tối ưu

Technical SEO là trụ cột kỹ thuật đảm bảo công cụ tìm kiếm có thể đễ dàng truy cập, thu thập dữ liệu, lập chỉ mục và xếp hạng trang web của bạn.

Thiết kế website Phan Thiết

Thiết kế website Phan Thiết

Thiết kế website Phan Thiết là điều kiện tiên quyết để doanh nghiệp nâng cao vị thế, tiếp cận khách hàng hiệu quả 24/7 và bứt phá doanh thu.

zalo