HTML và XHTML

HTML và XHTML

XHTML là HTML được viết bằng ngôn ngữ XML.

 

XHTML là gì?

  • XHTML là viết tắt của EXtensible HyperText Markup Language (Ngôn ngữ đánh dấu siêu văn bản mở rộng)
  • XHTML gần giống với HTML
  • XHTML chặt chẽ hơn HTML
  • XHTML là HTML được xác định như một ứng dụng XML
  • XHTML được hỗ trợ bởi hầu hết các trình duyệt phổ biến

 

Tại sao là XHTML?

Nhiều trang web trên internet chứa HTML “kém chất lượng”.

Đoạn mã HTML này hoạt động tốt trên hầu hết các trình duyệt (ngay cả khi nó không tuân theo các quy tắc của HTML):

<html>
<head>
  <title>This is bad HTML</title>

<body>
  <h1>Bad HTML
  <p>This is a paragraph
</body>

Hiện nay, có nhiều công nghệ trình duyệt khác nhau. Một số chạy trên máy tính, một số chạy trên điện thoại di động hoặc các thiết bị nhỏ khác. Các thiết bị nhỏ hơn thường thiếu tài nguyên hoặc sức mạnh để thông dịch đánh dấu “kém chất lượng”.

XML là một ngôn ngữ dánh dấu, nơi tài liệu phải được dánh dấu chuẩn xác (có “kết cấu tốt”)

XHTML được phát triển bằng cách kết hợp sức mạnh của HTML và XML.

XHTML là HTML được tái thiết kế bằng XML.

 

Những khác biệt quan trọng giữa HTML và XHTML:

Cấu trúc tài liệu

  • XHTML DOCTYPE là bắt buộc
  • Thuộc tính xmnls trong <html> là bắt buộc
  • <html>, <head>, <title>, and <body> là bắt buộc

Các phần tử XHTML

  • Các phần tử XHTML phải được lồng đúng cách
  • Các phần tử XHTML luôn phải được đóng
  • Các phần tử XHTML phải viết dạng chữ thường
  • Các tài liệu XHTML phải có một phần tử gốc

Các thuộc tính XHTML

  • Tên thuộc tính phải viết dạng chữ thường
  • Giá trị thuộc tính phải được trính dẫn
  • Đơn giản hóa thuộc tính bị cấm trong XHTML

 

 

<!DOCTYPE ....> là bắt buộc

Một tài liệu XHTML phải có một khai báo XHTML DOCTYPE.

Phải có các phần tử <html>, <head>, <title>, và <body>. Thuộc tính xmlns trong thẻ <html> phải xác định khoảng tên xml cho văn bản.

Ví dụ sau trình bày một tài liệu XHTML với các thẻ tối thiểu bắt buộc phải có:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <title>Title of document</title>
</head>

<body>
  some content 
</body>

</html>

 

Các phần tử XHTML phải được lồng đúng cách

Trong HTML, một số phần tử có thể được lồng không đúng cách bên trong phần tử khác, ví dụ:

<b><i>Văn bản in đậm và in nghiêng</b></i>

Trong XHTML, mọi phần tử phải được lồng đúng cách bên trong phần tử khác, như sau:

<b><i> Văn bản in đậm và in nghiêng </i></b>

Các phần tử XHTML luôn phải được đóng

Sai:

<p>Đây là một đoạn văn
<p>Đây là một đoạn văn khác

Đúng:

<p>Đây là một đoạn văn</p>
<p>Đây là một đoạn văn khác</p>

 

Phần tử rỗng cũng phải được đóng

Sai:

Ngắt dòng: <br>
Đường kẻ ngang: <hr>
Hình ảnh: <img src="happy.gif" alt="Happy face">

Đúng:

Ngắt dòng: <br />
Đường kẻ ngang: <hr />
Hình ảnh: <img src="happy.gif" alt="Happy face" />

 

Các phần tử XHTML phải viết thường

Sai:

<BODY>
<P>Đây là một đoạn văn</P>
</BODY>

Đúng:

<body>
<p>Đây là một đoạn văn</p>
</body>

 

Tên thuộc tính XHTML phải viết thường

Sai:

<table WIDTH="100%">

Đúng:

<table width="100%">

 

Giá trị thuộc tính phải được trích dẫn

Sai:

<table width=100%>

Đúng:

<table width="100%">

 

Không được đơn giản hóa thuộc tính

Sai:

<input type="checkbox" name="vehicle" value="car" checked />

Đúng:

<input type="checkbox" name="vehicle" value="car" checked="checked" />

Sai:

<input type="text" name="lastname" disabled />

Đúng:

<input type="text" name="lastname" disabled="disabled" />

 

Cách chuyển đổi từ HTML sang XHTML

  1. Thêm XHTML <!DOCTYPE> vào dòng đầu tiên của mỗi trang
  2. Thêm thuộc tính xmlns vào phần tử html của mỗi trang
  3. Thay đổi tất cả tên phần tử thành chữ thường
  4. Đóng tất cả thẻ rỗng
  5. Thay đổi tất cả tên thuộc tính thành chữ thường
  6. Trích dẫn tất cả các giá trị thuộc tính

 


Trích nguồn từ: (https://www.w3schools.com/html/html_xhtml.asp)

Lên trên