0

이번 주말에 내 고객을 위해 웹 사이트를 개설했습니다. Firefox, Chrome, Opera, Safari 및 IE 9에서 잘 보입니다.IE 7 및 8, 가능 6 웹 사이트 문제

그러나 IE 7 및 8 (아마도 6도)이 나에게 실질적인 문제를 제공합니다. 홈 페이지는 괜찮지 만 보조 페이지는 다른 테마 레이아웃을 가지고 있습니다.

나는 21 개의 Wordpress 테마를 편집했습니다. Mac을 사용하기 때문에 Windows 브라우저이므로 IE를 테스트하기가 어렵습니다. IE 8이 설치된 XP 랩톱이 있습니다. 그것이 내가 엉망이라고 알고있는 방법입니다. 보조 페이지는 정말 나쁩니다.

내 메인 콘텐츠, 왼쪽 사이드 바, 바닥 글 모두 잘못 정렬되었습니다. 문제를 해결하기 위해 여러 가지 시도를했습니다. 나는 해킹을 연구하고 그들을 시도했지만 아무 소용이 없습니다.

내 이미지에서 위치를 변경해 보았지만 페이지가 보이지 않게되었습니다. 나는 정말로 여기에서 곤란하다.

누군가가 나를 도와 주거나 올바른 방향으로 나를 인도 할 수 있다면 큰 도움이 될 것입니다. URL은 www.jubileecf.com입니다. 감사합니다, ~ 재 ~

+2

html 마크 업을 수정해야합니다. 사이트에서 w3c html validator를 실행하면 html에 몇 가지 구문 문제가 있음을 알 수 있습니다. –

+0

웹 개발자로서 귀하의 사이트가 모든 브라우저 (또는 적어도 클라이언트가 요구하는 모든 브라우저)에서 잘 보이는지 확인하는 것이 귀하의 임무입니다. IE에서 테스트하기가 어렵다는 것은 변명의 여지가 없습니다. IE에서 테스트하지 않았다면 제대로 일을하지 못했고 고객은 당황 할 권리가 있습니다. 그건 그렇고, – Spudley

+0

귀하의 사이트가 * 엄청나게 *로드가 느립니다. 당신도 그것을 고칠 수 있습니다. – Spudley

답변

1

문제는 코드에서 볼 수 있습니다 :

<script>(function fix_ie8() {if (strpos($_SERVER['HTTP_USER_AGENT'],”MSIE 8″)) {header(”X-UA-Compatible: IE=7″);}} 

ADD_ACTION ('send_headers', 'fix_ie8'))();

몇 가지 경우에 잘못되었습니다.

  • 먼저 잘못된 인용 부호가 사용됩니다.

  • 두 번째로, 자바 스크립트를 작성하려고 PHP 코드가 있습니다.

  • 셋째, PHP로 다시 변경하더라도 페이지의 일부가 출력되기 전에 header()을 호출 할 수 있기 때문에 여전히 이동해야합니다. 따라서 시작하기 전에 헤더의 중간 부분이 아니라 끝내야합니다.

  • 마지막으로 사이트가 너무 심하게 손상되는 이유는 자바 스크립트 인터프리터가 오류를보고 처리를 중지시키기 때문입니다. 따라서 포함 된 html5.js 파일의 IE 수정 사항이 실행되지 않으므로 페이지 레이아웃이 파기됩니다.

간단히 말해서,이 코드 줄은 잠겨 있어야하고 다시는 말하지 않아야합니다. 코드는 IE7 호환 모드로 IE8을 강제로 X-UA-Compatible 헤더를 사용하려고

그래서 ... 이제 여기에 무슨 일이 일어나고 있는지 따로 선택하고 해결책을 찾기 위해 시도 할 수 있습니다. 내가 말하고자하는 것은 당신이 IE에서 테스트조차 해 본 적이 없기 때문에 왜 어쨌든 IE7 호환 모드를 사용해야한다고 생각합니까?

코드 줄을 사용하지 않고 시도해보고 왜 발생합니까? 결과적으로 IE8에서 약간의 사소한 레이아웃 결함이있는 경우 호환 모드를 사용하는 대신 수정하는 것이 좋습니다.

이어야 IE7 호환 모드를 사용하면 어떤 종류의 스크립팅도 필요없이 사용할 수 있습니다. 간단히 메타 태그를 사용하십시오.

<meta http-equiv="X-UA-Compatible" content="IE=7" /> 

그게 전부입니다.

태그가 IE8에만 영향을 주도록하려면 (IE9가 아닌) IE 조건부 주석 (페이지의 다른 위치에서 이미 사용하고있는)으로 래핑 할 수 있습니다.