이 같은 CSS 선택기의 몇 가지있다을 적용하도록 Internet Explorer를 강제 할 수 있습니다. 그러나, 커서를 조금 움직일 때까지 변경된 스타일은 브라우저 (IE7, 기타)에 표시되지 않습니다. 스타일을 다시 평가하도록하려면 어떻게해야합니까?어떻게 CSS 스타일
편집 : 원래 IE6은 사용하지 않았지만 IE7은 사용했습니다. 그래도 문제는 여전히 남아 있습니다.
이 같은 CSS 선택기의 몇 가지있다을 적용하도록 Internet Explorer를 강제 할 수 있습니다. 그러나, 커서를 조금 움직일 때까지 변경된 스타일은 브라우저 (IE7, 기타)에 표시되지 않습니다. 스타일을 다시 평가하도록하려면 어떻게해야합니까?어떻게 CSS 스타일
편집 : 원래 IE6은 사용하지 않았지만 IE7은 사용했습니다. 그래도 문제는 여전히 남아 있습니다.
강제로 다시 렌더링하는 여러 가지 해킹 방법이 있습니다.
someElement.appendChild(document.createTextNode(' '));
someElement.removeChild(someElement.lastChild);
도이 경우에 작동한다고 : script.aculo.us은 다음과 같습니다 forceRerendering
(자연스럽게)라는 메소드가 있습니다.
IE6은 특성 또는 자식 선택기를 지원하지 않으므로 전혀 작동하지 않아야합니다. ie7-js을 사용하고 있습니까?
이제 알겠습니다. IE의 버그처럼 보입니다 (div
및 title
은 th
이고 sortOrder
은 동일한 문제가 있음). innerHTML
을 수정
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<style>
th[sortOrder="0"] {color:red}
th[sortOrder="1"] {color:blue}
</style>
<script>
function changeSortOrder() {
// swap the orders so that blue is actually red and vice versa
document.getElementById("hdr0").setAttribute("sortOrder","1");
document.getElementById("hdr1").setAttribute("sortOrder","0");
//document.getElementById("hdr0").innerHTML += "";
//document.getElementById("hdr1").innerHTML += "";
}
</script>
</head>
<body onload="changeSortOrder()">
<table class="SearchCustomerResults">
<thead><tr>
<th sortOrder="0" id="hdr0">red</th>
<th sortOrder="1" id="hdr1">blue</th>
</tr></thead>
</table>
</body>
</html>
선은 버그를 해결하는 것. 하지만 Google에서 참조를 찾을 수 없습니다.
비슷한 문제가 있습니다. 새 div를 삽입 한 후 여백이 적용되지 않았습니다.
다음 코드 도움 :
의 setTimeout (함수() {. newDiv.addClass ('tratata') removeClass ('tratata');}, 0); // jquery 구문
죄송합니다. IE7을 사용하고 있습니다. 문제는 여전히 남아 있지만 – erikkallen