2013-05-13 2 views
0

열 중 하나의 텍스트가 올바르게 정렬되어야하는 테이블이 생성되었습니다. 그래서 오른쪽과 같이 보입니다 :IE7에서 텍스트 정렬이 올바르게 작동하지 않습니다.

<td class="generatedClass" id="generatedId" style="width:20px; text-align:right;"> 
    <label id="generatedRowId"> some text here </label> 
</td> 

이것은 IE9와 IE8에서 작동하지만 IE7이 아닌 이유입니다. 누구나 왜 이것이 작동하지 않을지에 대한 아이디어가 있습니까? 참고로 인라인 스타일은 json 객체로 생성됩니다. 인라인 스타일을 좋아하지 않지만 내 전화가 아닙니다.

+0

+0

레이블에 스타일 설정 (너비 및 텍스트 맞춤)을 시도 했습니까? –

+0

레이블에는 현재이 테이블로 푸시 된 정보 배열의 위치에 의해 채워지는 자동 생성 ID 만 있습니다. 나는 또한 더 좋은 해결책이 될 것이라고 생각하면서 여기에 오기 전에 레이블을 붙이려고 시도했지만 어떤 이유로 거기에 스타일을 가지고 싶어하지는 않는다. – Dave

답변

1

코드가 제대로 작동하는 것 같습니다. 아마도 IE7은 이러한 인라인 스타일이 적용된 후에 DOM을 업데이트하지 않습니다.

IE10에서 페이지를 열고 IE7 페이지 모드로 이동하는 것이 좋습니다. 그런 다음 요소의 스타일을 검사하여 적용, 재정의 등을 확인할 수 있습니다.

+0

이것은 요소가 여전히 텍스트 정렬을 얻고 있지만 환상적인 아이디어였습니다. . 그러나 그것을 조사하는 동안 너비가 에서 문제를 일으키는 것으로 나타났습니다. 너비를 조정하면 셀 크기가 커지지 만 IE 7에서는 "더 오른쪽"정렬됩니다. 여기에서 가장 좋은 방법은 정적 ID를 각 열에 적용한 다음 다른 스타일 시트를 사용하여이 문제를 해결하는 것입니다. – Dave

+0

ID가 아닌 클래스를 추가하십시오. 페이지의 요소 전체에서 ID를 복제 할 수 없습니다. – Seza

+0

IE7은 당연히 현대의 브라우저와는 조금 다르게 CSS를 해석 할 것입니다. 테이블을 특정 방식으로 보이게하려면 테이블 행마다 클래스를 설정하는 것이 가장 좋은 방법 일 수 있습니다. –

0

IE7에서 인라인 스타일의 대소 문자 문제가있는 것처럼 보입니다. 인라인 스타일로 적용하려면 제거하십시오.

<html> 
<head> 
<title></title> 
</head> 
<body> 
<table width="400"> 
<tr> 
<td class="generatedClass" id="generatedId" style="text-align:right;"> 
    <label id="generatedRowId"> some text here </label> 
</td> 
</tr> 
</table> 
</body> 
</html> 
관련 문제