2013-10-14 3 views
0

제가 만든 응용 프로그램을 호스팅 할 웹 사이트를 만들고자하는데 IntelliJ IDEA IDE를 사용하고 있습니다. 나는 두 개의 HTML 페이지 및 CSS 파일이 있습니다외부 CSS가 작동하지 않는 것을 참조하십시오.

/index.html 
/projects/somepage.html 
/css/styles.css 

그래서, 모두 HTML 페이지에서, 나는 CSS 파일을 참조 할을, 그래서 모두 HTML 페이지에서이 있습니다

<link href="/css/styles.css" rel="stylesheet" type="text/css"/> 

I을 이게 효과가있을 거라고 생각했는데, 아니, 어떤 페이지도 스타일을 가지고 있지 않아.

HTML 페이지의 소스를보고 CSS 파일을 가져 오는 위치를 클릭하면 C : /css/styles.css가 표시됩니다.

저는 웹 사이트를 처음부터 새로 개발 한 적이 있는데, 경로가 약간 잘못되었을 수 있습니다. 내가 styles.css를 폴더에서 가져 와서 그것을 index.html의 "styles.css"로, somepage.html의 "../styles.css"로 참조하면 작동하도록 할 수 있습니다.하지만 원하지 않습니다. 다른 페이지에 대해 다른 경로를 사용해야합니다.

내 IDE에 문제가 있습니까? 관련성이있는 Website.iml이라는 프로젝트를 만들 때 IntelliJ IDEA에서 만든 파일이 있습니다. 이것은 그것의 내부는 것입니다 :

<?xml version="1.0" encoding="UTF-8"?> 
<module type="WEB_MODULE" version="4"> 
    <component name="NewModuleRootManager" inherit-compiler-output="true"> 
    <exclude-output /> 
    <content url="file://$MODULE_DIR$" /> 
    <orderEntry type="sourceFolder" forTests="false" /> 
    </component> 
</module> 

정말 그냥 코드를 만들 수 있습니다 및 파일 구조가 정확히 경우 동일하기 때문에 IDE가 전혀에 어떤 영향을 미칠 것입니다 방법을 모른다,하지만 IDE를 사용하지 않았습니다.

감사합니다.

답변

1

응용 프로그램을 빌드 할 때 개발 서버를 실행해야합니다. 개발 서버는 서버의 경우와 로컬 컴퓨터의 파일처럼 다르게 동작하기 때문에 응용 프로그램을 빌드 할 때 개발 서버를 실행해야합니다. 예를 들어, 루트 디렉토리에서 css/style.css를 검색 중이므로 경로가 잘못되었습니다.이 디렉토리는 컴퓨터에서 C :/드라이브입니다. 이것을 서버에 올리면 모든 파일 이 루트 디렉토리에 있기 때문에 완벽하게 작동합니다. 개발 서버를 실행

을 할 수있는 백만 가지 방법이 있습니다, 아주 쉽게, 당신은 그렇지

$ php -S localhost:8000 -t /path/to/your/application

를 통해 PHP5 간단한 APACHE 서버를 시작할 수 있습니다, 당신은 경로를 변경해야합니다 각각 다른 레벨에 중첩되어 있기 때문에 각 HTML 파일에서 스타일 시트에 적용됩니다.예를 들어

, 당신의 index.html 당신의 /projects/somepage.html../css/style.css의 경로로 머리에서 링크 태그가하는 반면, css/style.css의 경로와 머리의 링크 태그를 가질 것이다.

그렇다면 개발자 웹 사이트를 구축하기를 진지하게 생각한다면 이 필요합니다. 개발 서버를 사용하는 방법에 대해 알아보십시오.

0

CSS 앞에 '/'가 추가로 필요하지 않습니다.

<link rel="stylesheet" href="css/style.css" /> 

잘 작동해야합니다. 나는 여분으로 생각한다, 그것은 다른 폴더를 올려다 보았다. .. 아무것도 넣지 않았다. 희망이 도움이!

0

그냥 사이트 루트에보고하려고 슬래시를 가짐으로써

<link href="css/style.css" /> 

<link href="./css/style.css" /> 

또는

을보십시오. 마침표를 추가하여 문서의 루트 폴더를 찾습니다.

0

file (: // protocol)을 사용하여 로컬에서 파일을 열면 이러한 urls (사이트 루트 기준, 슬래시로 시작하는 URL)를 제대로 해석 할 수 없습니다. 브라우저가 시스템 루트에서 C : : /). 이 작업을 수행하려면 원격 구성 (로컬 경로가 아닌 웹 서버 URL을 사용하여 HTML에 액세스)을 사용해야합니다. Idea는 소위 내장 웹 서버 (http://confluence.jetbrains.com/display/WI/built-in+web+server)를 지원하므로 웹 서버를 설치하지 않고도 코드를 테스트 할 수 있습니다. 그리고 아이디어 13에서 JS 디버깅을위한 실행 구성은 하나 뿐이며 마우스 오른쪽 버튼 메뉴 (동작 "Create/Debug"html 파일)에서 생성 된 실행 구성은 파일 URL 대신 내장 http 서버의 URL을 사용합니다

관련 문제