2011-04-18 4 views
10

Firefox 3과 4 사이에 도입 된 것으로 보이는 문제가 있습니다. 기본적으로 table-layout: fixed과 관련이 있습니다.Firefox 4 및 테이블 레이아웃 : fixed

두 개의 DIV를 사용하는 스크롤 가능한 표가 있는데, 하나는 헤더 용이고 다른 하나는 본문 용입니다 (슬프게도 나를 위해 유일한 옵션입니다).

몸 테이블 (그것은 GWT 응용 프로그램의 일부,이 모든 자바 스크립트로 생성되어 있습니다)이 같은 보이는 :

<table style="table-layout: fixed;"> 
    <colgroup> 
     <col width="61" /> 
     <col width="57" /> 
    </colgroup> 
    <tbody> 
     <!-- data --> 
    </tbody> 
</table> 

(그런데, 페이지는 HTML 4.01 과도로 선언)

Firefox 3에서는 열 너비가 존중되고있는 것으로 보입니다. 그러나 파이어 폭스 4에서는 칼럼 너비를 무시하는 것으로 보인다. (정확히 정확하게 핀 수는 없지만 일반적으로 테이블 크기가 작아지기 때문에 파이어 폭스의 크기를 조정하기가 어렵다.) Firefox에서 열 너비를 검사하면 일반적으로 HTML에 지정된 너비와 관련이 거의 없습니다.

왜 이런 일이 일어날 지 아무에게도 알려 줄 수 있는지 궁금합니다. 당신은 FF에 수 후 4. 시험이 픽셀을해야 할 수도 있습니다

+4

분명히 잘못된 것은 없지만이 코드 스 니핏으로 테스트하기가 어렵습니다. 특히 애플리케이션이 동적으로 생성하는 경우에 특히 그렇습니다. 오류를 재현 할 수있는 충분한 코드를 제공 할 수 있습니까? 그런 다음 그것을 고치기 위해 찌를 수 있습니다. –

+4

참고 : COL 요소의 너비 속성은 [HTML5에서 더 이상 사용되지 않습니다.] (http://www.whatwg.org/specs/web-apps/current-work/multipage/obsolete.html#attr-col-width)입니다. 아마도 FF4 (FF3과 반대되는)가 그것을 좋아하지 않는 이유는 ... –

+1

아마 테이블 셀의 내용이 정의 된 너비보다 넓습니까? – RoToRa

답변

-3

: 사용하지 않는 이유는

<col width="61px" /> 
    <col width="57px" /> 
+0

슬프게도이 문제가 해결되지 않는 것으로 보입니다. –

-1

이 :

display:table; 
posiiton:fixed; 

그리고 COL-태그

는 CSS를 사용 :

<col style="width:61px;" /> 
<col style="width:57px;" /> 
1

가장 먼저 할 일은 마크 업의 유효성을 검사하는 것입니다. HTML 4.01에서는 유효하지 않은 "/>"스타일 SHORTTAG을 사용합니다 (이러한 클로저는 XHTML에서만 유효합니다).

예기치 않은 shorttag로 인해 브라우저가 "Quirks Mode"(강제로 페이지 정보 ...가 있는지 확인)가 실행되는지 모르겠습니다. Quirks Mode는 문제 해결에 대한 죽음입니다.

FireFox에 Web Developer Extension이 설치되어있는 경우, 테이블과 그 안의 모든 내용을 검사 할 것입니다. 뭔가가 벽의 벽에 밀려있을 수 있습니다.

문제가 더 이상 추측 할 수 없습니다. 데이터가 충분하지 않습니다. 브라우저에서 전체 HTML을 저장 한 다음 (불필요하거나 신중한 비트를 조심스럽게 제거한) 간단한 유스 케이스에서 문제가 계속 발생하는지 확인하는 것이 도움이됩니다. 그렇다면 웹에서 사용 사례를 어딘가에 게시하면 사람들이 조사 할 수 있습니다.

짧은 태그 이외에 잘못된 것을하고 있다는 사실을 밝히지 않았습니다. 하지만 내가 제안한 것처럼 아마도 테이블 몸체 내부에서 일어나는 일이있을 것입니다 ...