2013-05-30 3 views
0

테이블 헤더를 수정하고 싶습니다. StackOverflow's Answer 중 하나에서 대답을 발견했지만, 그 코드를 사용하는 데 문제가 있습니다. 헤더 크기를 백분율로 지정하여 사용자가 페이지를 확대/축소/축소 할 때 표가 자체 조정하도록합니다.고정 헤더 테이블이 전체 화면을 차지하지 않음

이 코드에서 헤더 크기가 테이블 데이터 행의 크기와 일치하지 않을 때. 내가 CSSposition 태그를 주석 처리하면, 헤더는 테이블 데이터 행과 정렬되지만 고정되지 않은 헤더가됩니다. 헤더를 테이블 데이터 행에 맞추고 전체 화면을 차지하도록 도와주십시오 (다양한 헤더 및 해당 데이터 행의 너비가 다를 수 있으므로 %로 지정된 크기). 다음은

<style type="text/css"> 
table 
{ 
    width:100%; 
    border:1px solid #000000; 
} 
thead 
{ 
    background-color:#000268; 
    color:#FFFFFF; 
    text-align:center; 
    position:fixed; 
    top:0px; 
    width:100%; 
} 
thead th 
{ 
    text-align:center; 
    border-width: 1px; 
    border-style: outset; 
} 
thead.th.hd1 
{ 
    width:20% 
    text-align:center; 
    border-width: 1px; 
    border-style: outset; 
} 
tbody { 
    color:#000000; 
    text-align:center; 
    height:150px; 
    overflow: scroll; 
    margin:0px; 
    width:100%; 
} 
tbody td 
{ 
    height:60px; 
    width:100px; 
    border-width: 1px; 
    border-style: outset; 
} 
</style> 
<table> 
<thead> 
<tr><th class = "hd1">Head1</th><th class = "hd1">Head2</th><th class = "hd1">Head3</th><th class = "hd1">Head4</th><th class = "hd1">Head5</th><th class = "hd1">Head6</th></tr> 
</thead> 
<tbody> 
<tr><td>r1c1</td><td>r1c2</td><td>r1c3</td><td>r1c4</td><td>r1c5</td><td>r1c6</td></tr> 
<tr><td>r2c1</td><td>r2c2</td><td>r2c3</td><td>r2c4</td><td>r2c5</td><td>r2c6</td></tr> 
<tr><td>r3c1</td><td>r3c2</td><td>r3c3</td><td>r3c4</td><td>r3c5</td><td>r3c6</td></tr> 
<tr><td>r4c1</td><td>r4c2</td><td>r4c3</td><td>r4c4</td><td>r4c5</td><td>r4c6</td></tr> 
<tr><td>r5c1</td><td>r5c2</td><td>r5c3</td><td>r5c4</td><td>r5c5</td><td>r5c6</td></tr> 
<tr><td>r6c1</td><td>r6c2</td><td>r6c3</td><td>r6c4</td><td>r6c5</td><td>r6c6</td></tr> 
<tr><td>r7c1</td><td>r7c2</td><td>r7c3</td><td>r7c4</td><td>r7c5</td><td>r7c6</td></tr> 
<tr><td>r8c1</td><td>r8c2</td><td>r8c3</td><td>r8c4</td><td>r8c5</td><td>r8c6</td></tr> 
<tr><td>r9c1</td><td>r9c2</td><td>r9c3</td><td>r9c4</td><td>r9c5</td><td>r9c6</td></tr> 
<tr><td>r10c1</td><td>r10c2</td><td>r10c3</td><td>r10c4</td><td>r10c5</td><td>r10c6</td></tr> 
<tr><td>r11c1</td><td>r11c2</td><td>r11c3</td><td>r11c4</td><td>r11c5</td><td>r11c6</td></tr> 
<tr><td>r12c1</td><td>r12c2</td><td>r12c3</td><td>r12c4</td><td>r12c5</td><td>r12c6</td></tr> 
<tr><td>r13c1</td><td>r13c2</td><td>r13c3</td><td>r13c4</td><td>r13c5</td><td>r13c6</td></tr> 
<tr><td>r14c1</td><td>r14c2</td><td>r14c3</td><td>r14c4</td><td>r14c5</td><td>r14c6</td></tr> 
<tr><td>r15c1</td><td>r15c2</td><td>r15c3</td><td>r15c4</td><td>r15c5</td><td>r15c6</td></tr> 
</tbody> 
</table> 
+3

시도는 내 눈 .. JSfiddle – Abhimanyu

+4

이렇게 많은 세포에서 – George

답변

1

는 작업 예이다 : 나는 THEAD 및 TBODY 태그 작업을 만들 수 없습니다
, 그래서 나는 두 가지 간단한 테이블로했다. 여기

<!DOCTYPE html> 
<html> 
<head> 
<!-- After some testing, this code seems to work fine both in IE 10 and Firefox 21 
z-index is suported in IE 8 and should work if you use a !DOCTYPE declaration--> 
<style type="text/css"> 
#space 
{ 
position: fixed; 
z-index: 51; 
width: 99%; 
height: 30px; 
background-color: #FFFFFF; 
margin: 0px; 
margin-top: -10px; 
} 
#tblheader 
{ 
position: fixed; 
z-index: 52; 
width:99%; 
border:1px solid #000000; 
border-style: outset; 
text-align:center; 
color:#FFFFFF; 
background-color:#000268; 
margin-top: 20px; 
padding: 0px; 
} 
#tblbody 
{ 
position: absolute; 
z-index: 50; 
width:99%; 
border:1px solid #000000; 
border-style: outset; 
text-align:center; 
line-height: 1em; 
margin-top: 85px; 
padding: 0px; 
overflow: auto; 
} 
#tblbody tr 
{ 
min-height: 15px; 
height: auto; 
padding: 0px; 
} 
body 
{ 
height: 3000px; 
} 
#tblheader tr 
{ 
height: 60px; 
} 
td 
{ 
width: 16%; 
height: 40px; <!-- Here you can set the minimum height of the row --> 
border-width: 1px; 
border-style: outset; 
text-align:center; 
word-wrap: break-word; 
} 

</style> 
</head> 
<body> 
<div id="space">&nbsp;</div> 
<table id="tblheader"> 
<tr><td>Head1</td><td>Head2</td><td>Head3</td><td>Head4</td><td>Head5</td><td>Head6</td></tr> 
</table> 
<table id="tblbody"> 
<tr><td>r1c1 other text that is automaticaly wrapped/the cell height increases automatically/other text that is automaticaly wrapped/the cell height increases automatically</td><td>r1c2</td><td>r1c3</td><td>r1c4</td><td>r1c5</td><td>r1c6</td></tr> 
<tr><td>r2c1</td><td>r2c2</td><td>r2c3</td><td>r2c4</td><td>r2c5</td><td>r2c6</td></tr> 
<tr><td>r3c1</td><td>r3c2</td><td>r3c3</td><td>r3c4</td><td>r3c5</td><td>r3c6</td></tr> 
<tr><td>r4c1</td><td>r4c2</td><td>r4c3</td><td>r4c4</td><td>r4c5</td><td>r4c6</td></tr> 
<tr><td>r5c1</td><td>r5c2</td><td>r5c3</td><td>r5c4</td><td>r5c5</td><td>r5c6</td></tr> 
<tr><td>r6c1</td><td>r6c2</td><td>r6c3</td><td>r6c4</td><td>r6c5</td><td>r6c6</td></tr> 
<tr><td>r7c1</td><td>r7c2</td><td>r7c3</td><td>r7c4</td><td>r7c5</td><td>r7c6</td></tr> 
<tr><td>r8c1</td><td>r8c2</td><td>r8c3</td><td>r8c4</td><td>r8c5</td><td>r8c6</td></tr> 
<tr><td>r9c1</td><td>r9c2</td><td>r9c3</td><td>r9c4</td><td>r9c5</td><td>r9c6</td></tr> 
<tr><td>r10c1</td><td>r10c2</td><td>r10c3</td><td>r10c4</td><td>r10c5</td><td>r10c6</td></tr> 
<tr><td>r11c1</td><td>r11c2</td><td>r11c3</td><td>r11c4</td><td>r11c5</td><td>r11c6</td></tr> 
<tr><td>r12c1</td><td>r12c2</td><td>r12c3</td><td>r12c4</td><td>r12c5</td><td>r12c6</td></tr> 
<tr><td>r13c1</td><td>r13c2</td><td>r13c3</td><td>r13c4</td><td>r13c5</td><td>r13c6</td></tr> 
<tr><td>r14c1</td><td>r14c2</td><td>r14c3</td><td>r14c4</td><td>r14c5</td><td>r14c6</td></tr> 
<tr><td>r15c1</td><td>r15c2</td><td>r15c3</td><td>r15c4</td><td>r15c5</td><td>r15c6</td></tr> <!-- I have copied some rows for test purposes --> 
<tr><td>r2c1</td><td>r2c2</td><td>r2c3</td><td>r2c4</td><td>r2c5</td><td>r2c6</td></tr> 
<tr><td>r3c1</td><td>r3c2</td><td>r3c3</td><td>r3c4</td><td>r3c5</td><td>r3c6</td></tr> 
<tr><td>r4c1</td><td>r4c2</td><td>r4c3</td><td>r4c4</td><td>r4c5</td><td>r4c6</td></tr> 
<tr><td>r5c1</td><td>r5c2</td><td>r5c3</td><td>r5c4</td><td>r5c5</td><td>r5c6</td></tr> 
<tr><td>r6c1</td><td>r6c2</td><td>r6c3</td><td>r6c4</td><td>r6c5</td><td>r6c6</td></tr> 
<tr><td>r7c1</td><td>r7c2</td><td>r7c3</td><td>r7c4</td><td>r7c5</td><td>r7c6</td></tr> 
<tr><td>r8c1</td><td>r8c2</td><td>r8c3</td><td>r8c4</td><td>r8c5</td><td>r8c6</td></tr> 
<tr><td>r9c1</td><td>r9c2</td><td>r9c3</td><td>r9c4</td><td>r9c5</td><td>r9c6</td></tr> 
<tr><td>r10c1</td><td>r10c2</td><td>r10c3</td><td>r10c4</td><td>r10c5</td><td>r10c6</td></tr> 
<tr><td>r11c1</td><td>r11c2</td><td>r11c3</td><td>r11c4</td><td>r11c5</td><td>r11c6</td></tr> 
<tr><td>r12c1</td><td>r12c2</td><td>r12c3</td><td>r12c4</td><td>r12c5</td><td>r12c6</td></tr> 
<tr><td>r13c1</td><td>r13c2</td><td>r13c3</td><td>r13c4</td><td>r13c5</td><td>r13c6</td></tr> 
<tr><td>r14c1</td><td>r14c2</td><td>r14c3</td><td>r14c4</td><td>r14c5</td><td>r14c6</td></tr> 
<tr><td>r15c1</td><td>r15c2</td><td>r15c3</td><td>r15c4</td><td>r15c5</td><td>r15c6</td></tr> 
<tr><td>r2c1</td><td>r2c2</td><td>r2c3</td><td>r2c4</td><td>r2c5</td><td>r2c6</td></tr> 
<tr><td>r3c1</td><td>r3c2</td><td>r3c3</td><td>r3c4</td><td>r3c5</td><td>r3c6</td></tr> 
<tr><td>r4c1</td><td>r4c2</td><td>r4c3</td><td>r4c4</td><td>r4c5</td><td>r4c6</td></tr> 
<tr><td>r5c1</td><td>r5c2</td><td>r5c3</td><td>r5c4</td><td>r5c5</td><td>r5c6</td></tr> 
<tr><td>r6c1</td><td>r6c2</td><td>r6c3</td><td>r6c4</td><td>r6c5</td><td>r6c6</td></tr> 
<tr><td>r7c1</td><td>r7c2</td><td>r7c3</td><td>r7c4</td><td>r7c5</td><td>r7c6</td></tr> 
<tr><td>r8c1</td><td>r8c2</td><td>r8c3</td><td>r8c4</td><td>r8c5</td><td>r8c6</td></tr> 
<tr><td>r9c1</td><td>r9c2</td><td>r9c3</td><td>r9c4</td><td>r9c5</td><td>r9c6</td></tr> 
<tr><td>r10c1</td><td>r10c2</td><td>r10c3</td><td>r10c4</td><td>r10c5</td><td>r10c6</td></tr> 
<tr><td>r11c1</td><td>r11c2</td><td>r11c3</td><td>r11c4</td><td>r11c5</td><td>r11c6</td></tr> 
<tr><td>r12c1</td><td>r12c2</td><td>r12c3</td><td>r12c4</td><td>r12c5</td><td>r12c6</td></tr> 
<tr><td>r13c1</td><td>r13c2</td><td>r13c3</td><td>r13c4</td><td>r13c5</td><td>r13c6</td></tr> 
<tr><td>r14c1</td><td>r14c2</td><td>r14c3</td><td>r14c4</td><td>r14c5</td><td>r14c6</td></tr> 
<tr><td>r15c1</td><td>r15c2</td><td>r15c3</td><td>r15c4</td><td>r15c5</td><td>r15c6</td></tr> 
</table> 
</body> 
</html> 
+0

덕분에 코드를 넣어, 그것은했다. – sarbjit

+0

한 가지 질문 : 첫 번째 열을 더 큰 크기로 만들려면 어떻게해야합니까? 첫 번째 헤더의'td '에'id'를 추가하고'tblheader.td.abc '로 추가했습니다. { width : 30 %; 신장 : 40px; border-width : 1px; border-style : outset; 텍스트 정렬 : 가운데; word-wrap : break-word; }'. 그러나 그것은 효과가없는 것 같습니다. 헤더의 다양한 크기를 달성하는 데 도움을 주시면 감사하겠습니다. – sarbjit

+0

태그를 # 기호 (예 : #abc)로만 호출 할 수 있습니다. .abc는 클래스가 abc로 설정된 태그를 호출한다는 것을 의미합니다. .tblheader td #abc를 사용할 수 있지만 간단하게 #abc를 사용할 수도 있습니다. 아래에서는 #def id를 두 번째 테이블의 첫 번째 열에있는 첫 번째 셀에 추가 한 완전한 코드를 넣었으므로 테이블 1과 동일하게 배열됩니다. – Gimmy

1

당신이 원하는 사본이다 :

<!DOCTYPE html> 
<html> 
<head> 
<style type="text/css"> 
#space 
{ 
position: fixed; 
z-index: 51; 
width: 99%; 
height: 30px; 
background-color: #FFFFFF; 
margin: 0px; 
margin-top: -10px; 
} 
#tblheader 
{ 
position: fixed; 
z-index: 52; 
width:99%; 
border:1px solid #000000; 
border-style: outset; 
text-align:center; 
color:#FFFFFF; 
background-color:#000268; 
margin-top: 20px; 
padding: 0px; 
} 
#tblbody 
{ 
position: absolute; 
z-index: 50; 
width:99%; 
border:1px solid #000000; 
border-style: outset; 
text-align:center; 
line-height: 1em; 
margin-top: 85px; 
padding: 0px; 
overflow: auto; 
} 
#tblbody tr 
{ 
min-height: 15px; 
height: auto; 
padding: 0px; 
} 
body 
{ 
height: 3000px; 
} 
#tblheader tr 
{ 
height: 60px; 
} 
td 
{ 
width: 14%; 
height: 40px; 
border-width: 1px; 
border-style: outset; 
text-align:center; 
word-wrap: break-word; 
} 

#abc, 
#def 
{ 
width: 30%; 
height: 40px; 
border-width: 1px; 
border-style: outset; 
text-align:center; 
word-wrap: break-word; 
} 

</style> 
</head> 
<body> 
<div id="space">&nbsp;</div> 
<table id="tblheader"> 
<tr><td id="abc">Head1</td><td>Head2</td><td>Head3</td><td>Head4</td><td>Head5</td><td>Head6</td></tr> 
</table> 
<table id="tblbody"> 
<tr><td id="def">r1c1 other text that is automaticaly wrapped/the cell height increases automatically/other text that is automaticaly wrapped/the cell height increases automatically</td><td>r1c2</td><td>r1c3</td><td>r1c4</td><td>r1c5</td><td>r1c6</td></tr> 
<tr><td>r2c1</td><td>r2c2</td><td>r2c3</td><td>r2c4</td><td>r2c5</td><td>r2c6</td></tr> 
<tr><td>r3c1</td><td>r3c2</td><td>r3c3</td><td>r3c4</td><td>r3c5</td><td>r3c6</td></tr> 
<tr><td>r4c1</td><td>r4c2</td><td>r4c3</td><td>r4c4</td><td>r4c5</td><td>r4c6</td></tr> 
<tr><td>r5c1</td><td>r5c2</td><td>r5c3</td><td>r5c4</td><td>r5c5</td><td>r5c6</td></tr> 
<tr><td>r6c1</td><td>r6c2</td><td>r6c3</td><td>r6c4</td><td>r6c5</td><td>r6c6</td></tr> 
<tr><td>r7c1</td><td>r7c2</td><td>r7c3</td><td>r7c4</td><td>r7c5</td><td>r7c6</td></tr> 
<tr><td>r8c1</td><td>r8c2</td><td>r8c3</td><td>r8c4</td><td>r8c5</td><td>r8c6</td></tr> 
<tr><td>r9c1</td><td>r9c2</td><td>r9c3</td><td>r9c4</td><td>r9c5</td><td>r9c6</td></tr> 
<tr><td>r10c1</td><td>r10c2</td><td>r10c3</td><td>r10c4</td><td>r10c5</td><td>r10c6</td></tr> 
<tr><td>r11c1</td><td>r11c2</td><td>r11c3</td><td>r11c4</td><td>r11c5</td><td>r11c6</td></tr> 
<tr><td>r12c1</td><td>r12c2</td><td>r12c3</td><td>r12c4</td><td>r12c5</td><td>r12c6</td></tr> 
<tr><td>r13c1</td><td>r13c2</td><td>r13c3</td><td>r13c4</td><td>r13c5</td><td>r13c6</td></tr> 
<tr><td>r14c1</td><td>r14c2</td><td>r14c3</td><td>r14c4</td><td>r14c5</td><td>r14c6</td></tr> 
<tr><td>r15c1</td><td>r15c2</td><td>r15c3</td><td>r15c4</td><td>r15c5</td><td>r15c6</td></tr> 
<tr><td>r2c1</td><td>r2c2</td><td>r2c3</td><td>r2c4</td><td>r2c5</td><td>r2c6</td></tr> 
<tr><td>r3c1</td><td>r3c2</td><td>r3c3</td><td>r3c4</td><td>r3c5</td><td>r3c6</td></tr> 
<tr><td>r4c1</td><td>r4c2</td><td>r4c3</td><td>r4c4</td><td>r4c5</td><td>r4c6</td></tr> 
<tr><td>r5c1</td><td>r5c2</td><td>r5c3</td><td>r5c4</td><td>r5c5</td><td>r5c6</td></tr> 
<tr><td>r6c1</td><td>r6c2</td><td>r6c3</td><td>r6c4</td><td>r6c5</td><td>r6c6</td></tr> 
<tr><td>r7c1</td><td>r7c2</td><td>r7c3</td><td>r7c4</td><td>r7c5</td><td>r7c6</td></tr> 
<tr><td>r8c1</td><td>r8c2</td><td>r8c3</td><td>r8c4</td><td>r8c5</td><td>r8c6</td></tr> 
<tr><td>r9c1</td><td>r9c2</td><td>r9c3</td><td>r9c4</td><td>r9c5</td><td>r9c6</td></tr> 
<tr><td>r10c1</td><td>r10c2</td><td>r10c3</td><td>r10c4</td><td>r10c5</td><td>r10c6</td></tr> 
<tr><td>r11c1</td><td>r11c2</td><td>r11c3</td><td>r11c4</td><td>r11c5</td><td>r11c6</td></tr> 
<tr><td>r12c1</td><td>r12c2</td><td>r12c3</td><td>r12c4</td><td>r12c5</td><td>r12c6</td></tr> 
<tr><td>r13c1</td><td>r13c2</td><td>r13c3</td><td>r13c4</td><td>r13c5</td><td>r13c6</td></tr> 
<tr><td>r14c1</td><td>r14c2</td><td>r14c3</td><td>r14c4</td><td>r14c5</td><td>r14c6</td></tr> 
<tr><td>r15c1</td><td>r15c2</td><td>r15c3</td><td>r15c4</td><td>r15c5</td><td>r15c6</td></tr> 
<tr><td>r2c1</td><td>r2c2</td><td>r2c3</td><td>r2c4</td><td>r2c5</td><td>r2c6</td></tr> 
<tr><td>r3c1</td><td>r3c2</td><td>r3c3</td><td>r3c4</td><td>r3c5</td><td>r3c6</td></tr> 
<tr><td>r4c1</td><td>r4c2</td><td>r4c3</td><td>r4c4</td><td>r4c5</td><td>r4c6</td></tr> 
<tr><td>r5c1</td><td>r5c2</td><td>r5c3</td><td>r5c4</td><td>r5c5</td><td>r5c6</td></tr> 
<tr><td>r6c1</td><td>r6c2</td><td>r6c3</td><td>r6c4</td><td>r6c5</td><td>r6c6</td></tr> 
<tr><td>r7c1</td><td>r7c2</td><td>r7c3</td><td>r7c4</td><td>r7c5</td><td>r7c6</td></tr> 
<tr><td>r8c1</td><td>r8c2</td><td>r8c3</td><td>r8c4</td><td>r8c5</td><td>r8c6</td></tr> 
<tr><td>r9c1</td><td>r9c2</td><td>r9c3</td><td>r9c4</td><td>r9c5</td><td>r9c6</td></tr> 
<tr><td>r10c1</td><td>r10c2</td><td>r10c3</td><td>r10c4</td><td>r10c5</td><td>r10c6</td></tr> 
<tr><td>r11c1</td><td>r11c2</td><td>r11c3</td><td>r11c4</td><td>r11c5</td><td>r11c6</td></tr> 
<tr><td>r12c1</td><td>r12c2</td><td>r12c3</td><td>r12c4</td><td>r12c5</td><td>r12c6</td></tr> 
<tr><td>r13c1</td><td>r13c2</td><td>r13c3</td><td>r13c4</td><td>r13c5</td><td>r13c6</td></tr> 
<tr><td>r14c1</td><td>r14c2</td><td>r14c3</td><td>r14c4</td><td>r14c5</td><td>r14c6</td></tr> 
<tr><td>r15c1</td><td>r15c2</td><td>r15c3</td><td>r15c4</td><td>r15c5</td><td>r15c6</td></tr> 
</table> 
</body> 
</html> 
+0

# 기호 (예 : #abc) – Gimmy

+0

알림 첫 번째 열의 with를 30 %로 설정했습니다. 나머지 열의 너비는 수 (99 % - 30 %)/(6-1) = ~ 14 %로 나눕니다. 각 열의 너비를 별도로 설정하려면 테이블의 첫 번째 행에있는 각 셀에 ID를 할당하고 너비의 합이 최대 99 %가되도록 각 열의 너비를 설정해야합니다. – Gimmy

+0

도움 주셔서 감사합니다. – sarbjit

관련 문제