2010-09-28 65 views
10

XHTML có 'ý kiến' liên quan đến việc sử dụng <thead>, <tfoot><tbody>?XHTML thead, tfoot và tbody tầm quan trọng

Có trường hợp nào nên được sử dụng không?

Cảm ơn bạn.

+0

Bất cứ khi nào bạn có một ''

bạn đang ** luôn ** sử dụng ít nhất một ' '. Phần tử '' là bắt buộc trong mỗi bảng, nhưng các thẻ mở và đóng là tùy chọn (chúng có thể được suy ra từ sự hiện diện của một ''). Điều này sẽ rõ ràng nếu bạn yêu cầu '' cho '.parentNode' hoặc'
'cho' .childNodes' của nó ngay cả khi bạn rời ' 'ra khỏi tài liệu. – Gareth

+0

@Gareth - không đúng XHTML. tức là Khi được phân phối dưới dạng ứng dụng/xhtml + xml. – Alohci

Trả lời

6

Các thead, tbody, và các yếu tố tfoot trong HTML được sử dụng để bảng nhóm hàng thành nhiều phần logic dựa trên nội dung của họ. Có hai lý do chính bạn muốn làm điều này:

  • Để cho phép cơ thể được cuộn độc lập với các tiêu đề và/hoặc
    chân
  • Để làm cho nó dễ dàng hơn để áp dụng quy tắc phong cách khác nhau để các phần khác nhau của bảng.

như đã nêu ở đây What is benefit of <thead>

Nếu bạn đang sử dụng bảng để làm cho bố cục sau đó không sử dụng các.Nếu bạn đang hiển thị dữ liệu dạng bảng thì hãy sử dụng nó.

Và nếu bạn không có bất cứ thứ gì để đặt trong tfoot thì đừng thêm cái này.

Bạn sẽ tìm thấy một số câu trả lời tốt ở đây cũng What is benefit of <thead>

+0

Cảm ơn bạn m-s-g. Vì vậy, nếu tôi viết '

',' 'sẽ không được trình duyệt tự động thêm? Ví dụ, IE thực hiện điều này khi bạn kiểm tra một bảng với Công cụ dành cho nhà phát triển. – Francisc

+0

@Francisc: Không, một ẩn '' luôn được thêm vào. – DisgruntledGoat

+0

Được rồi, cảm ơn. – Francisc

8

Chúng cho phép bạn thêm ngữ nghĩa vào bảng của bạn và cũng cho phép bạn tạo kiểu cho đầu và chân của bảng mà không giới thiệu lớp/id thừa.

Tôi không thể nghĩ ra một tình huống mà bạn để sử dụng nó, mặc dù tôi biết một số plugin jQuery sử dụng đầu để kiểm soát hành vi của đầu &.

Nếu dữ liệu bảng của bạn cần tiêu đề và các hàng Tóm lại, sử dụng chúng, nếu không nói là không

5

Các quy tắc duy nhất, mà tôi biết, đó là thead (nếu sử dụng) phải được xác định đầu tiêntfoot (nếu được sử dụng) trước các tbody (phần nào phản trực giác, theo ý tôi, nhưng chúng là các quy tắc).

Tôi nghĩ rằng mục đích của thead là một phần cho mục đích in, cho phép các cột được in trên trang thứ hai để lặp lại thead để dữ liệu có ý nghĩa hơn.

Về lý thuyết nó cũng có thể cho phép một cuộn tbody trong trường hợp của những chiếc bàn dài, với tiêu đề cố định:

bộ phận này cho phép các đại lý sử dụng để hỗ trợ di chuyển của các cơ quan bảng một cách độc lập của người đứng đầu bảng và chân. Khi các bảng dài được in, đầu bảng và thông tin chân có thể được lặp lại trên mỗi trang có chứa dữ liệu bảng.

Nguồn: http://www.w3.org/TR/html401/struct/tables.html#edef-TFOOT

này không, tuy nhiên, công việc hiện tại (không sử dụng ít nhất hai bảng, tôi nghĩ).

Lợi ích lớn nhất, mặc dù là ghi chú @Glenn Slaven, có vẻ là ngữ nghĩa.

+1

Ý tưởng đặt '' trước ' 'là để thông tin tóm tắt (chân trang) có thể được hiển thị trong khi bảng dữ liệu lớn vẫn đang tải xuống – Gareth

+0

@Gareth, vâng. Nó làm cho * cảm giác * để làm điều đó theo cách đó, nhưng nó chỉ cảm thấy, như tôi nói, phản trực giác là tất cả. =) –

+3

Lưu ý rằng nó hợp lệ để đặt 'tfoot' trước hoặc sau' tbody' trong (X) HTML5. Lý do của Gareth là âm thanh, nhưng giống như David, hầu hết mọi người tìm thấy cách làm HTML4 để làm cho nó phản trực giác, vì vậy các quy tắc được thoải mái. Nó làm cho không có sự khác biệt với cách trình duyệt hoạt động, nó chỉ là một sự thay đổi hợp lệ. – Alohci

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