2010-07-18 37 views
7

Danh sách định nghĩa <dl> yêu cầu mỗi <dd> sẽ có thẻ <dt> không?Danh sách định nghĩa <dl> yêu cầu mỗi <dd> sẽ có thẻ <dt> không?

Ví dụ:

option1 cho mỗi <dd> tồn tại của mình <dt> cũng nếu <dt> trống:

<dl> 
<dt></dt> 
<dd>value1</dd> 
<dt>name2</dt> 
<dd>value2</dd> 
</dl> 

option2 cho mỗi <dd> không tồn tại của mình <dt> nếu <dt> trống:

<dl> 

<dd>value1</dd> 
<dt>name2</dt> 
<dd>value2</dd> 
</dl> 


Edit:

Ví dụ khi dt thể để trống (build của nó bằng cách tự động Zend_Form - không thể thay đổi):

<dl> 

<dt><lable>Last Name:</label></dt> 
<dd><input type='text' size='30' /></dd> 
<dt><lable></label></dt> 
<dd><input type='submit' size='30' value='submit'/></dd> 
<dt><lable>Name:</label></dt> 
<dd><input type='text' size='30' /></dd> 

</dl> 

Cảm ơn

Trả lời

7

HTML 4 không thực thi điều này, không phải là XHTML 1.1. Họ chỉ yêu cầu <dl> chỉ chứa một hoặc nhiều <dt> hoặc <dd> s.

Tuy nhiên, HTML 5 has stricter requirement:

zero hoặc nhiều: (một hoặc nhiều <dt> yếu tố, Tiếp theo một hoặc nhiều <dd> yếu tố)

Do đó, option2 của bạn sẽ không xác nhận trong HTML 5.

tùy chọn1 vẫn ổn, vì <dt> có thể chứa bất kỳ "nội dung phrasing" nào, bao gồm nội dung trống .

1

Thẻ được sử dụng trong số kết hợp với (xác định danh sách định nghĩa) và (mô tả mục trong danh sách).
Được sao chép từ W3.

2

A dl chỉ chứa dd s xác thực trong W3C validator, vì vậy tôi đoán là không sao.

W3C HTML 4,01 Tham khảo: 10.1 Introduction to lists

dụ làm việc:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<html> 
<head> 
<title>Untitled</title> 
</head> 
<body> 
    <dl> 
    <dd>value1</dd> 
    <dd>value2</dd> 
</dl> 
</body> 
</html> 
1

Nó là hợp lệ, nhưng tôi không thể hiểu tại sao bạn muốn bao giờ muốn làm điều đó.

Lưu ý rằng ví dụ thứ hai của bạn chỉ thực sự áp dụng cho mục đầu tiên; không có những thứ như thiếu dt sau này, vì nhiều mục dd có thể áp dụng cho một đơn dt.

+0

Ví dụ cho trường hợp của tôi để giải thích tốt hơn:

Tên:
Yosef

3

Theo the HTML 4 DTD:

<!ELEMENT DL - - (DT|DD)+    -- definition list --> 

Điều đó có nghĩa bạn có thể trộn và kết hợp.

Dưới đây là một tổng quan tốt đẹp trong những cách khác nhau để sử dụng một danh sách định nghĩa:

+0

+1, đây là tài nguyên dứt khoát nhất. Có một giới thiệu tốt để giải thích cú pháp DTD ở đâu đó? –

+0

@Pekka: Thẳng tiến và đủ - http://en.wikipedia.org/wiki/Document_Type_Definition#Element_type_declarations ;-) – Tomalak

Các vấn đề liên quan