최근 웹 개발자는 Chrome 64에서 로컬 CSS 파일의 CSS 규칙에 액세스할 수 없는 문제에 직면했습니다. Chrome 버전 64. 이 문제는 브라우저에 구현된 보안 변경으로 인해 발생할 수 있습니다.
과거에는 Chrome을 사용하여 개발자가 로컬 파일에서 CSS 규칙에 액세스할 수 있었습니다. 그러나 버전 64에서는 이 기능이 제한되었습니다. 스타일시트의 cssRules 속성에 액세스하려고 시도할 때 개발자는 정의되지 않은 응답이나 오류가 발생합니다.
<code class="html"><script> window.onload = function() { try { alert(document.styleSheets[0]); // works alert(document.styleSheets[0].cssRules); // undefined } catch (e) { alert(e); // error } } </script> <link rel='stylesheet' href='myStyle.css'> <!-- myStyle.css --> body { background-color: green; }</code>
이 문제를 해결하기 위해 개발자는 몇 가지 해결 방법을 식별했습니다.
이 문제의 근본 원인은 Chrome의 보안 규칙 변경에 있습니다. 이제 Chrome은 서로 다른 출처의 리소스에 대한 액세스를 제한하는 CORS(Cross-Origin Resource Sharing) 정책을 준수합니다. 로컬 파일은 HTML 파일과 출처가 다르기 때문에 이러한 파일에서 CSS 규칙에 액세스하는 것은 CORS 정책을 위반하는 것입니다.
Chrome에서 CORS 정책을 구현하면 보안이 향상되지만 또한 다음과 같은 몇 가지 미해결 문제도 발생했습니다.
위 내용은 Chrome 64의 로컬 파일에서 CSS 규칙에 액세스할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!