性爱视频在线播放-人人射人人射-99热网-极品探花在线|www.kangbangglove.com

網頁設計技巧

文章詳情
 

如果您剛剛開始接觸網頁設計,是不是經常發生這樣的問題呢?做好的網頁在自己機器上可以正常瀏覽,而把頁面傳到服務器上就總是出現看不到圖片,css樣式表失效等錯誤。這種情況下多半是由于你使用了錯誤的路徑,在應該使用相對路徑的地方使用了絕對路徑,導致瀏覽器無法在指定的位置打開指定的文件。

下面我們就來談一下讓初學者頭疼的相對路徑與絕對路徑的區別問題。

什么是絕對路徑:

大家都知道,在我們平時使用計算機時要找到需要的文件就必須知道文件的位置,而表示文件的位置的方式就是路徑,例如只要看到這個路徑:c:/website/img/photo.jpg我們就知道photo.jpg文件是在c盤的website目錄下的img子目錄中。類似于這樣完整的描述文件位置的路徑就是絕對路徑。我們不需要知道其他任何信息就可以根據絕對路徑判斷出文件的位置。而在網站中類似以http://www.webjx.com/img/link.gif來確定文件位置的方式也是絕對路徑。

另外,在網站的應用中,通常我們使用"/"來表示根目錄,/img/photo.jpg就表示photo.jpg文件在這個網站的根目錄上的img目錄里。但是這樣使用對于初學者來說是具有風險性的,因為要知道這里所指的根目錄并不是你的網站的根目錄,而是你的網站所在的服務器的根目錄,因此當網站的根目錄與服務器根目錄不同時,就會發生錯誤。
什么是相對路徑:

讓我們先來分析一下為什么會發生圖片不能正常顯示的情況。舉一個例子,現在有一個頁面index.htm,在這個頁面中聯接有一張圖片photo.jpg。他們的絕對路徑如下:
c:/website/index.htm
c:/website/img/photo.jpg

如果你使用絕對路徑c:/website/img/photo.jpg,那么在自己的計算機上將一切正常,因為確實可以在指定的位置即c:/website/img/photo.jpg上找到photo.jpg文件,但是當你將頁面上傳到網站的時候就很可能會出錯了,因為你的網站可能在服務器的c盤,可能在d盤,也可能在aa目錄下,更可能在bb目錄下,總之沒有理由會有c:/website/img/photo.jpg這樣一個路徑。那么,在index.htm文件中要使用什么樣的路徑來定位photo.jpg文件呢?對,應該是用相對路徑,所謂相對路徑,顧名思義就是自己相對與目標位置。在上例中index.htm中聯接的photo.jpg可以使用img/photo.jpg來定位文件,那么不論將這些文件放到哪里,只要他們的相對關系沒有變,就不會出錯。

另外我們使用“../”來表示上一級目錄,“../../”表示上上級的目錄,以此類推。(學習過dos的朋友可能更容易理解)

再看幾個例子,注意所有例子中都是index.htm文件中聯接有一張圖片photo.jpg。

例:
c:/website/web/index.htm
c:/website/img/photo.jpg
在此例中index.htm中聯接的photo.jpg應該怎樣表示呢?
錯誤寫法:img/photo.jpg
這種寫法是不正確的,在此例中,對于index.htm文件來說img/photo.jpg所代表的絕對路徑是:c:/website/web/img/photo.jpg,顯然不符合要求。
正確寫法:使用../img/photo.jpg的相對路徑來定位文件

例:
c:/website/web/xz/index.htm
c:/website/img/images/photo.jpg
在此例中index.htm中聯接的photo.jpg應該怎樣表示呢?
錯誤寫法:../img/images/photo.jpg
這種寫法是不正確的,在此例中對于index.htm文件來說../img/images/photo.jpg所代表的絕對路徑是:c:/website/web/img/images/photo.jpg。 
正確寫法:可以使用../../img/images/photo.jpg的相對路徑來定位文件

例:
c:/website/web/xz/index.htm
c:/website/web/img/photo.jpg
在此例中index.htm中聯接的photo.jpg應該怎樣表示呢?
錯誤寫法:../../img/photo.jpg
這種寫法是不正確的,在此例中對于index.htm文件來說../../img/photo.jpg所代表的絕對路徑是:c:/website/img/photo.jpg。
正確寫法:可以使用../img/photo.jpg的相對路徑來定位文件

總結:通過以上的例子可以發現,在把絕對路徑轉化為相對路徑的時候,兩個文件絕對路徑中相同的部分都可以忽略,不做考慮。只要考慮他們不同之處就可以了。

如何修改樣式表的路徑:

使用文本編輯器打開htm文件,查看源代碼,在源代碼的開頭部分……標記中間找到。“Href=”后面的內容就是css的路徑,我們可以根據以上的知識進行相對路徑的轉換。

例:
c:/website/web/xz/index.htm
c:/website/css/test.css
在此例中index.htm中聯接test.css文件,可以使用../../css/test.css的相對路徑來定位文件,完整的代碼標記是:
錯誤寫法舉例:../../../css/test.css
這種寫法是不正確的,在此例中對于index.htm文件來說../../../css/test.css所代表的絕對路徑是:c:/css/test.css

最后,為了避免在制作網頁時出現路徑錯誤,我們可以使用dreamweaver的站點管理功能來管理站點。只要使用菜單命令site-new site新建站點并定義站點目錄之后,它將自動的把絕對路徑轉化為相對路徑,并且當你在站點中移動文件的時候,與這些文件關聯的連接路徑都會自動更改,實在是非常的方便。

收藏:0
來源:網站建設網

版權:所有文章為演示數據,版權歸原作者所有,僅提供演示效果!

轉載請注明出處:http://www.kangbangglove.com/wzjs/6021.html

相關推薦
迅睿CMS網站表單留言提交之后通知會員作者自己
知識點:表單提交之后的鉤子、自定義通知設置 1、先創建自定義通知腳本,文件位置:dayrui/My/Config/Notice.php 代碼如下:
2024-11-10
29
迅睿CMS將獨立模塊首頁改為網站首頁
在使用迅睿cms建站時,有時會遇到此類需求,想要將其他獨立模塊的首頁用作網站的主頁,訪問域名時,首頁展現的是該獨立模塊的首頁內容。筆者這里以demo模塊為例,做一個說明。大多數情況下,迅睿cms的默認首頁模板解析的是:index.html,demo獨立模塊首頁模板解...
2024-11-10
74
迅睿CMS如何讓網站的前端控制器禁止訪問
讓網站的前端控制器禁止訪問,只保留后臺控制器的訪問開發思路:在cms運行后鉤子中判斷如果來自前端頁面就禁止往下執行/config/hooks.php\Phpcmf\Hooks::on('cms_init', function() { if (IS_AD...
2024-11-10
110
迅睿CMS外部網站如何調用CMS數據
在外部網站或者靜態html頁面上調用迅睿cms數據方法1、在迅睿cms中開啟開發者模式,index.php開啟2、然后訪問迅睿cms首頁,并查看源代碼,如下圖:3、按照上圖紅線地址,創建一個模板/template/pc/default/home/api/waibu....
2024-11-10
66
發表評論