2015-08-23 56 views
0

多年前我用html和框架製作了網站。現在我可以看到所有現代網頁都使用HTML5和CSS(div)。我已經知道如何製作一個漂亮的網站設計,但我正在努力在網站上進行導航。網站菜單導航:div代替框架(html5,css)

可以說我有一個網站index.html與2個div(div導航和div內容)。

當我點擊菜單欄(div導航)中的鏈接時,href是另一個.html文件。前面的例子我有一個關於about.html的鏈接。

是about.html index.html的副本,只是在div內容中的另一個文本?所以菜單又重新生成了?

這意味着我必須複製index.html並重新編寫div內容部分。而div導航部分將永遠是相同的?

我真的很努力的想法,每次都在每個單一的文件的菜單欄,而不是舊的框架式,如果這是如何使用它。

+1

大多數當前的網站不再是「靜態」的,而是使用某種(服務器端)技術,允許在網站的不同頁面中包含相同的菜單結構。 – CBroe

回答

0
  1. 您可以將您的導航像my_awesome_menu.php一個單一的文件,並在您的網站的每一個頁面使用include 'my_awesome_menu.php';。當您在my_awesome_menu.php中添加新項目時,更改將發生在您的所有頁面上。只有當你有服務器運行時它纔會起作用。它不會像HTML文件那樣在你的桌面上工作,因爲沒有人會執行php文件。
  2. 您應該將所有樣式存儲在外部.css文件或文件中。維護起來很容易,您可以獲得顯着的收益,因爲瀏覽器會在下載樣式後緩存樣式。這意味着當用戶打開第二頁時,他不會再次加載CSS,他只會加載該特定頁面的HTML。
+0

@ 1:是的,我已經嘗試在PHP中的功能。但是在函數中,如果我沒有錯,就必須使用'echo'html代碼「'來代表任何html代碼。我讀到這是一個非常糟糕的解決方案。 @ 2:是的,這是我已經知道的。但是,我必須再次在每個站點(.html文件)上構建菜單嗎?那麼每次點擊鏈接時整個網站都會重新建立起來?這意味着我在每個.html文件中都有一些代碼部分。當我改變菜單時,我必須在每一個.html文件中改變它?! – jeekay

+0

@jeekay您不必在'my_awesome_menu.php'中使用任何php,它也可以是'my_awesome_menu.html'。您只需將該文件的全部內容包含到您插入php'include'功能的另一個文件的任何位置。當您編寫php代碼時使用'echo'函數。在你的情況唯一的PHP代碼是有限的短語'<?php包括'menu.html'?>' – Cheslab

+0

不錯的thx,只是試了一下。它很好用:-) – jeekay