>

모든 웹 파일에서 UTF-8 인코딩을하는 올바른 방법에 대해 궁금합니다

모든 파일 (CSS 및 JS 포함)은 UTF-8 인코딩으로 만들어져 저장됩니다

PHP에서, 나는 다음과 같이 메인 페이지 (이 페이지는 다른 모든 것을 포함한다) 위에 문자셋을 설정했다 :

header('Content-type: text/html; charset=utf-8');

같은 페이지에이 HTML 메타 태그가 있습니다 :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

그러면 첫 줄에 다음과 같은 외부 CSS 파일이 표시됩니다.

@charset "UTF-8";

이제 모든 CSS/JS 파일에 문자셋을 설정해야하는지 궁금합니다.

메타 태그에서charset = utf-8을 사용하여 각 파일을 제공해야합니까? 업데이트 : 연결된 리소스 (charset = "utf-8")의 문자 인코딩이 더 이상 사용되지 않습니다


  • 답변 # 1

    웹 서버에서 제공 될 때 문자 집합 선언을위한 가장 좋은 장소는 "Content-Type"헤더에 있습니다. PHP에서 제공 할 때 올바르게하고 있습니다. CSS 및 JS의 헤더를 설정할 수도 있습니다. CSS와 JS가 PHP를 통해제공되지하지만 정적 파일로 가정하면 .htaccess 파일에 다음을 추가 할 수 있습니다.

    AddCharset utf-8 .js
    AddCharset utf-8 .css
    
    

    HTML에서 JavaScript 파일에 링크 할 때 다음 문자 세트를 포함 할 수도 있습니다 :

    <script type="text/javascript" src="/js/file.js" charset="utf-8"></script>
    
    

    본문 문자셋 선언은 파일을 로컬로 다운로드하여 열 때 가장 유용합니다. 이 경우 헤더의 메타 정보가 손실됩니다.

  • 답변 # 2

    메타 요소 설정 utf-8의 목적은 사용자 브라우저가 서버가 페이지를 데스크탑에 저장해야하는 경우 페이지를 제대로 읽을 수 있도록하기위한 것입니다. 페이지를 제공하지 말고 utf-8 헤더를 포함하십시오. PHP에서는 헤더에 실제로 페이지 중복 (및 반복 :)을 포함 시키지만 헤더에 설정했지만 내가 준 이유는 좋은 생각입니다.

    @charset이 무엇인지 잊어 버렸지 만 그것을 포함하여 얼마나 중요한지를 보여주는 적이 없었습니다.

    btw, 메타 태그에는 닫는 슬래시가 없습니다.

  • 이전 web development - 내 웹 사이트에서 SMS 보내기 및 받기
  • 다음 ftp - 사이트 이미지 디렉토리에서 권한이 갑자기 '00'으로 변경되었습니다