2011-02-01 34 views
21

điều này có lẽ là một câu hỏi ngớ ngẩn và tôi có câu trả lời cho bản thân mình nhưng tôi muốn biết nếu tôi làm gì sai. Tôi có một trang web, hãy gọi nó là www.mysite.com. Trong trang này, tôi có một số câu hỏi thường gặp nhưng người đã xây dựng trang web đã lưu các trang FAQ dưới một thư mục trên trang có tên là "Câu hỏi thường gặp".Liên kết sẽ không quay lại thư mục?

Ví dụ: trang Câu hỏi thường gặp sẽ được đặt tại:

www.mysite.com/pages/en/faqs/faq-page1.html.

Lưu ý thư mục pages/en/. Lý tưởng nhất là tôi muốn tất cả các trang được lưu dưới www.mysite.com/index.html vv nhưng tôi không thể thay đổi điều này.

Dù sao, khi tôi đang ở trên bất kỳ trang Câu hỏi thường gặp nào và tôi cố liên kết lại để nói trang chủ index.html điều hướng sẽ không chuyển đến trang. Vì vậy, ví dụ, khi tôi đang trên:

www.mysite.com/pages/en/faqs/faq-page1.html

và tôi cố gắng liên kết lại với trang chủ

www.mysite.com/pages/en/index.html (đó là nơi mà các trang chỉ mục được lưu) các nav sẽ không hoạt động. Thay vào đó, nó sẽ cố gắng đến www.mysite.com/pages/en/faqs/index.html.

Bây giờ tôi giả định điều này xảy ra vì tôi đang ở trong thư mục "faq", nhưng làm cách nào để quay trở lại thư mục gốc khi liên kết? Mã cho liên kết chỉ đơn giản là <a href="index.html">Home</a>. Tôi có thể tất nhiên chỉ cần đặt trong các liên kết đầy đủ www.mysite.com/pages/en/index.html, mà sẽ giải quyết điều này, nhưng là có một cách khác xung quanh này? Xin lỗi vì bài đăng dài như vậy và tôi có thể giải thích điều này tốt hơn nhưng tôi không thể: S

Xin cảm ơn trước.

Trả lời

35

Bạn cần phải cung cấp một đường dẫn tập tin tương đối của <a href="../index.html">Home</a>

Hoặc bạn có thể chỉ định một liên kết từ thư mục gốc của bạn trang web với <a href="/pages/en/index.html">Home</a>

... có ý nghĩa đặc biệt trong đường dẫn tập tin, .. nghĩa lên một thư mục và . nghĩa thư mục hiện hành.

nên <a href="index.html">Home</a> cũng giống như <a href="./index.html">Home</a>

+0

Nhờ bạn cả. Tôi đã thử nó và nó hoạt động. Cảm ơn các cập nhật! – zik

5

Để đi lên một thư mục trong liên kết, hãy sử dụng ... Điều này có nghĩa "đi lên một thư mục", do đó liên kết của bạn sẽ trông giống như thế này:

<a href="../index.html">Home</a> 
+0

Cảm ơn, mới đó đã chỉ cho tôi bị câm :) – zik

18

Có hai loại đường dẫn: tuyệt đối và tương đối. Điều này về cơ bản là giống nhau đối với các tệp trong đĩa cứng và các thư mục của bạn trong một URL.

Đường dẫn tuyệt đối bắt đầu bằng dấu gạch chéo hàng đầu. Họ luôn luôn trỏ đến cùng một vị trí, không có vấn đề mà bạn sử dụng chúng:

  • /pages/en/faqs/faq-page1.html

đường dẫn tương đối là phần còn lại (tất cả những gì không bắt đầu với dấu gạch chéo).Vị trí họ trỏ đến phụ thuộc vào nơi bạn đang sử dụng chúng

  • index.html là:
    • /pages/en/faqs/index.html nếu gọi từ /pages/en/faqs/faq-page1.html
    • /pages/index.html nếu gọi từ /pages/example.html
    • , vv

Ngoài ra còn có hai tên đặc biệt thư mục: ...:

  • . có nghĩa là "thư mục hiện tại"
  • .. có nghĩa là "thư mục cha"

Bạn có thể sử dụng chúng để xây dựng đường dẫn tương đối:

  • ../index.html/pages/en/index.html nếu gọi từ /pages/en/faqs/faq-page1.html
  • ../../index.html/pages/index.html nếu gọi từ /pages/en/faqs/faq-page1.html

Một khi bạn đã quen thuộc với các điều khoản, thật dễ dàng để hiểu những gì nó thất bại và làm thế nào để sửa chữa nó. Bạn có hai lựa chọn:

  • Sử dụng đường dẫn tuyệt đối
  • Fix đường dẫn tương đối của bạn
+0

Đẹp và mô tả, cảm ơn! Tôi không thể đánh dấu nếu không tôi sẽ ... – zik

Các vấn đề liên quan