CSS 내부 서버의 상대 참조?
-
09-12-2019 - |
문제
CSSRegistration은 켜져있는 사이트 URL과 관련하여 CSS 파일을 참조하는 웅대 한 작업을 수행합니다.
CSS 파일은 내부에서 무엇을합니까?/ _layouts / images 디렉토리에 자산을 배포하는 경우, 물음 / _layouts / 이미지는 대부분의 사이트에서 훌륭하게 작동합니다.그러나 가끔 / 사이트 / rootweb로서 참조가 있으며,이 경우 참조는 / sites / _layouts / 이미지가 될 필요가 있습니다.
이 작업을 수행하는 좋은 방법이 있습니까?
해결책
CSS 파일의 URL은 항상 CSS 파일 자체를 기준으로합니다.위치 (예 : 스타일 라이브러리 또는 이와 유사한) 위치 (예 : 스타일 라이브러리 또는 유사한)에있는 참조에 대한 자산이있는 경우 CSS 파일과 관련된 경로를 사용하기 만하면됩니다.
_layouts 또는 _layouts / 이미지 내에서 자산을 참조하는 경우 쉽습니다.이들은 모든 사이트에서 사용할 수있는 가상 폴더로 구성됩니다 (콘텐츠 데이터베이스가 아닌 파일 시스템을 가리키고 있기 때문에).따라서 이러한 모든 경로는 동일합니다.
http://localhost/_layouts/images/logo.png
http://localhost/sites/abc/_layouts/images/logo.png
http://localhost/sites/abc/subsite1/subsite2/_layouts/images/logo.png
.
CSS 파일에서 경로는 간단합니다. _layouts / images / logo.png
다른 팁
확인.따라서 다음과 같은 디렉토리 구조가있는 경우 :
Folder1/
Folder1/images/image1.png
Folder1/css/style.css
.
(예 : _layouts, _layouts / 1033 / 스타일 등 모든 폴더 내에있을 수 있습니다)
style.css에서 image1.png를 참조하려면 style.css에서해야 할 일은 다음과 같습니다.
'../images/image1.png'
.
시작의 ".../"CSS 스타일 시트가있는 위치에서 위의 이미지 디렉토리를 찾습니다.따라서 상대 경로가 STYLE.CSS 파일의 위치에서 항상 결정될 때 항상 /sites/
문제를 고려할 필요가 없습니다.