2012-12-14 3 views
0

CSS 프레임 워크를 사용 중이고 아이콘 (배경 이미지 속성이있는 클래스 선택기 사용)을 표시하려고합니다. 말을하자, 내 파일 구조는 다음과 같습니다CSS의 이미지 경로

@include "Folder2/framework-images.css"; 
... 

프레임 워크 images.css : 같은

@include "Folder1/framework.css"; 
... 

framework.css :

Content/site.css 
Content/Folder1/framework.css 
Content/Folder1/Folder2  /framework-images.css 
Content/Folder1/Folder2  /framework-icon1.png 

site.css처럼 보이는 :

,451,515,
.selector { 
    background-image: url("icon1.png"); 
} 

하지만 파이어 폭스 개발 도구 내 HTML 요소 클래스 "선택"에 추가려고 할 때 여기에서 아이콘을로드하려고 저를 보여줍니다

http://localhost:1234/Content/~/Content/Folder1/Folder2/icon.png 

을 올바른 경로 (오전되는 동안 맞지?) :

~/Content/Folder1/Folder2/icon.png 

하거나

http://localhost:1234/Content/Folder1/Folder2/icon.png 

그래서 될 수 있습니다 실수? 올바른 경로를 사용하도록 클라이언트에게 알려주는 방법은 무엇입니까?

P. 그것이 중요한 경우 나는 dotless (Less CSS)를 사용하고있다. 다른 단어, 모두 .css은 실제로 .less입니다.

P.P.S. 이것은 ASP.NET MVC4 응용 프로그램입니다.

업데이트 : 홈페이지 (...) : 같이 @djfarrelly, 문제가 배경 이미지에 잘못된 경로에 있었다 지적했다. 나는 그것을 다음과 같이 바꿨다 :

background-image: url("/Content/Folder1/Folder2/Icon1.png"); 

그리고 그것이 작동하기 시작했다. 하지만 여전히 혼란 스럽습니다. 누구든지 전체 경로 지정없이 작동하지 않는 이유를 설명 할 수 있습니까?

+0

클래스를 할당 한 행을 게시 하시겠습니까? "~"문자가 들어있는 방식이 명확하지 않습니다 (CSS가 정확하고 문제가 다른 곳에서 의존 할 수 있음). – Ulises

+0

@Ulises 나는 이것이 덜 마술의 일부라는 것을 확신한다 : 물결표를 포함한 당신을위한 URL을 생성한다.생성 된 URL이 실제로 잘못된 위치를 가리키고 있습니까? 아니면 모양이 방해가됩니까? – cimmanon

+0

설명해 주셔서 감사합니다. LESS에 익숙하지 않았습니다. – Ulises

답변

3

이미지에 대한 모든 참조는 혼동을 피하기 위해 웹 사이트의 루트 폴더를 참조해야합니다. 루트에서 참조로 CSS를 변경하는 것을 시도했다 : 당신이 그것을 청소해야 /을 포함하는 경우

.selector { 
    background-image: url("/Content/Folder1/Folder2/icon1.png"); 
} 

.

편집 : 나는 원래 루트 폴더를 참조하여 정확한 /의/../ 승이 게시 .

+0

배경 이미지 URL이 CSS 파일과 관련되어야한다고 생각했습니다. 언급 한대로 경로를 지정하려했지만 dev.tools는 ** http : // localhost : 4883/Content/~/Content/Folder1/Folder2/icon1.png **를 표시했습니다. 그 후 시작 ".."없이 url ("/ Content/...")을 시도했으며 작동합니다. 문제의 근원을 지적 해 주셔서 감사합니다. –

+0

그래, 나는 그것에 대해서도 생각해 봤지만 어떤 증거도 찾지 못했다. 너? –