테이블에 여러 <thead> / <tbody> 유효합니까?


82

다음과 유사한 목록 목록을 상상해보십시오.

var list = [
  { name: 'group1', 
    items: [ 1, 2, 3, 4, 5 ]
  },
  { name: 'group2', 
    items: [ 1, 2, 3, 4, 5 ]
  },
  etc...
]

이제 인수를 "데이터에 대한 설계되지 않은 테이블"전체를 잊고, 나는에 대해 하나의 테이블을 표시하고 싶어 list하고 별도의 가지고 <thead><tbody>의 각 항목에 대해를 list.

기술적으로 유효합니까? 이것은 브라우저에서 작동하지만 내 거미 감각이 이것에 쑤시고 있습니다 .


1
당신은 확실히 여러 tbodies를 가질 수 있습니다, 나는 thead에 대해보기 위해 사양을 확인해야 할 것입니다.
Kevin B

2
@KevinB : 최대 한 개의 thead와 한 개의 tfoot IIRC : w3.org/TR/html-markup/table.html#table
Zeta

1
@unor 내 질문은 여러과 관련이있다 <thead><tfooter>요소,하지 <tbody>. 그것들은 동일하지 않으며 별도의 규칙에 의해 지시됩니다.
AlbertEngelB 2015

@ Dropped.on.Caprica : 아 맞다, 나는 당신이 여러 thead 요소를 원한다는 것을 놓쳤다 . 나는 투표를 철회했다.
unor

답변:


120

원하는만큼의 <tbody>요소를 가질 수 있지만 각 <thead><tfoot>. 참조 :

콘텐츠 모델 :

이 순서대로 : 선택적으로 캡션 요소, 0 개 이상의 colgroup 요소, 선택적으로 thead 요소, 0 개 이상의 tbody 요소 또는 하나 이상의 tr 요소, 선택적으로 tfoot 요소 , 선택적으로 하나와 혼합 됨 또는 더 많은 스크립트 지원 요소.


그리고 당신은 사용할 수있는 th scope=rowgroup정기적 인 내부의 tr각을 설명하기 위해 tbody. "예제"를 참조하십시오 .
CletusW

12

하나 thead와 하나만 tfoot 허용 되므로 추가 헤더를 만들면 안됩니다. 모든 thin a thead는 "시간", "온도", "현재 불타고있는 고양이 수"와 같은 열에 의미를 부여합니다.

목록의 항목이 관련되어있는 경우 모두 동일한 테이블에 있어야하며 해당 관계를 표시하기 위해 적합한 헤더를 제공해야합니다.

항목이 실제로 관련이없는 경우 모든 항목에 대해 단일 테이블을 제공해야합니다. 좋은 결과를 얻기 위해 모든 테이블에 동일한 CSS를 적용 할 수 있습니다.


5
"목록의 항목이 관련되어 있다면 모두 동일한 테이블에 있어야하며 해당 관계를 표시하기 위해 적합한 헤더를 제공해야합니다."-매우 긴 테이블에서 동일한 헤더를 반복하는 것이 때때로 바람직 할 수 있으므로 사용자가 열이 무엇인지 기억하기 위해 맨 위로 스크롤 할 필요가 없습니다. 물론 이에 대한 다른 해결책이 있습니다 (예 : "고정"테이블 헤더를 사용하는 JavaScript 또는 다른 행과 시각적으로 다르게 만들기 위해 테이블 ​​행 요소에 CSS를 사용).
Mike

5

나는 그것이 id속성 과 같다고 생각 합니다. 고유해야하지만 실제로 동일한 페이지에서 다시 사용할 수 있으며 여전히 선택할 수 있습니다. 즉, 할 수 있다고해서 반드시해야하는 것은 아닙니다.

나는 그것에 반대하는 것이 좋습니다.


3
둘 이상을 갖는 것은 전혀 문제가 <tbody>없지만 사양에 따라 하나 <thead>와 하나만 있을 수 있습니다 <tfoot>.
Pointy

내가 알 수 있듯이 그는 그것을 전혀 제안하지 않았습니다. 브라우저에서 작동한다고 말씀 하셨나요?
AlbertEngelB

@Sebas 첫 번째 문장은 id와 마찬가지로 on 이상을 추가 할 수 있다는 것을 알리는 것입니다.
Justin

@ Sebas 더 나은? 때때로 내 머릿속에있는 것이 내가 내려 놓은 것보다 더 분명합니다 : S
Justin

아니, 전적으로 사과드립니다. 잘못은 제 것이 었습니다. 건배!
Sebas 2013-04-22
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.