2016-10-07 49 views
0

我找到正確的方式來提出這個問題有一些問題。但我希望你瞭解這個問題並能夠提供幫助。網頁jsp:包含標題,但不使用鏈接的樣式表

我已經使用jsp設置了一個非常基本的Maven Web應用程序。

目前我有2頁。

  1. 的index.jsp(與loginbutton起始頁)
  2. 回到Home.jsp(首頁登錄後)

我也有一個header.jspfooter.jsp。 index.jsp和home.jsp都使用頁眉和頁腳。

標題中有一個指向stylesheet的鏈接。 當我運行該項目。 index.jsphome.jsp使用標頭(他們有正確的標籤) 但只有index.jsp使用stylesheet

爲什麼home.jsp不使用stylesheet,即使正確包含標題。

以下是代碼的一些圖像,可幫助您瞭解情況。

中的項目結構

The Project Structure

的index.jsp與包括頁眉/ footer.jsp中

Index.jsp with the include of header/footer.jsp

回到Home.jsp用相同的包括報頭/ footer.jsp中的,只有路徑不同。 但他們正確加載,除了CSS。

Home.jsp with the same include of header/footer.jsp

這裏是header.jsp中,與鏈接樣式表

the Header.jsp, with the link to the stylesheet

如果您需要更多的信息,我會很樂意給它。

回答

0

感謝@Rohit Gaikwad的回答,我能夠自己弄明白。

原來你需要從使用的頁面不僅header.jsp而且從index/home.jsp

定位的CSS(這樣所以我改變了鏈接樣式表如下:

<link rel="stylesheet" type="text/css" href="css/default-header.css"/> 
    <link rel="stylesheet" type="text/css" href="../../css/default-header.css"/> 

這樣我可以使用index.jsp和home.jsp (仍然不確定爲什麼index.jsp可以從css/default-header.css鏈接加載css,而無需使用「../」瀏覽文件夾)

1

使用下面的代碼的CSS中的header.jsp鏈接:

<link rel="stylesheet" type="text/css" href="../../../css/default-header.css"/> 

注:您需要正確定位的資源時,「../」將一步到位搜索資源回夾。
當前您的header.jsp將搜索位於default文件夾的資源,但您的css位於webapp\css文件夾中。因此,您需要遍歷以找到該資源。

竅門:ctrl key然後單擊超級引用鏈接,如果鏈接正確,應該直接打開該資源。否則,如果提供的路徑不正確,則無法找到資源。
希望你使用的是IDE。

對於評論查詢,

  1. index.jsp文件是layouts文件夾,所以你必須包括你的header.jsp爲default/header.jsp。現在,您的代碼將在layouts/layouts/default/header.jsp
  2. 搜索header.jsp中爲home.jsp,如果你能夠訪問footer.jsp然後header.jsp應該header.jsp訪問。代碼../layouts/default/header.jsphome.jsp中正確。
+0

我只是試過了,聽起來合乎邏輯。當我使用你的代碼來鏈接css時,我確實可以在我的IDE中按住Ctrl鍵單擊它,不能用舊鏈接來做到這一點。 但是,現在css將不會加載/用於home AND index.jsp – Tristan