Không có gì. / 19 (dấu gạch chéo) đề cập đến điều gì về vị trí đường dẫn tệp HTML?


228

Tôi biết ../có nghĩa là đi lên một con đường, nhưng ./chính xác có nghĩa là gì?

Gần đây tôi đã trải qua một hướng dẫn và nó dường như chỉ đề cập đến một tập tin ở cùng một vị trí, vậy nó có cần thiết không? Tôi chỉ có thể không sử dụng nó nếu đó là tất cả những gì nó đang làm?

Câu trả lời:


136

./là thư mục chứa tập tin làm việc :

Vì vậy, trong /index.htm ./là thư mục gốc
nhưng trong /css/style.css ./là thư mục css.

Đây là quan trọng cần nhớ bởi vì nếu bạn di chuyển CSS từ /index.htmđể /css/style.csscon đường sẽ thay đổi.


45
Làm thế nào để trả lời câu hỏi này? Rõ ràng, Simon Suh hiểu rằng ./ đề cập đến cùng một vị trí nơi tệp tham chiếu là. Phần chính của câu hỏi là: "Tại sao phải sử dụng nó và nó có cần thiết không?". Lý do duy nhất để thích cú pháp của "./file" thay vì "file" tôi có thể tìm thấy là ./ có nghĩa là thư mục hiện tại và CHỈ thư mục hiện tại. Vì vậy, nếu có một số loại công cụ / trình biên dịch / etc tìm kiếm tệp, thì './file' sẽ tìm kiếm CHỈ trong thư mục hiện tại, trong khi 'tệp' sẽ tìm kiếm bất cứ nơi nào công cụ được định cấu hình để tìm kiếm (ví dụ: thư mục gốc, thư mục hiện tại , v.v.)
Marcel Toth

12
Vì vậy, sự khác biệt giữa ./abc.htmvà chỉ abc.htm?
Teemoh

12
@Teemoh Chúng giống nhau về JS, HTML và CSS. "./" là một quy ước lập trình cũ được chuyển sang các ngôn ngữ mới hơn này. Trong trường hợp khác, họ có thể có nghĩa là những thứ khác nhau. ví dụ. nếu một "đường dẫn" được đặt trong HĐH thì abc.exe có thể là một tệp và ./abc.exe có thể không.
Coomie

@MarcelToth bạn thực sự nên đăng bài này như một câu trả lời!
Adam

285

/ có nghĩa là gốc của ổ đĩa hiện tại;

./ có nghĩa là thư mục hiện tại;

../ có nghĩa là cha mẹ của thư mục hiện tại.


Có "tiêu đề (" Vị trí: ../ ");" chuyển hướng đến thư mục cha mẹ?
belford

3
./index.html khác với index.html như thế nào?
N-ate

1
Tôi có một đoạn mã từ một mẫu, nó chứa ././cái này nghĩa là gì?
Aaron Franke

120

Bạn có thể sử dụng danh sách sau đây để tham khảo nhanh:

   /   = Root directory
   .   = This location
   ..  = Up a directory
   ./  = Current directory
   ../ = Parent of current directory
   ../../ = Two directories backwards

Bài viết hữu ích: https://css-tricks.com/quick-reminder-about-file-paths/


13
Có gì khác nhau giữa "Vị trí này" và "Thư mục hiện tại"? Cảm ơn bạn.
WebBrother

2
@WebBrother, trong khi nó bật ra ./ chỉ hoạt động trong chế độ doctype không nghiêm ngặt, trong khi. hoạt động ở cả hai chế độ, đây là liên kết stackoverflow.com/questions/296873/
Kẻ

Cảm ơn bạn. Giải thích rõ ràng này chỉ giải quyết một vấn đề rất cơ bản, tôi đã bối rối để hỏi to.
Rò rỉ Eddie

57
.  = This location
.. = Up a directory

Vì vậy, ./foo.htmlchỉ là foo.html. Và nó là tùy chọn, nhưng có thể có liên quan nếu một tập lệnh tạo đường dẫn (mức độ liên quan đến tập lệnh đó, chứ không phải cách tham chiếu hoạt động).


38

Có, ./có nghĩa là thư mục làm việc hiện tại. Bạn chỉ có thể tham chiếu các tập tin trực tiếp theo tên, mà không có nó.


11

Bạn đúng là bạn có thể bỏ qua nó. Nó chỉ hữu ích cho sự rõ ràng. Không có sự khác biệt về chức năng giữa nó ở đó và không ở đó.


16
It's useful only for clarity.Hoặc nhầm lẫn, trong trường hợp của OP - và của tôi. :)
ANeves

Bạn không thể bỏ qua nó khi bạn nhập tệp javascript trong html5. Ví dụ: nếu bạn có thư mục js và tệp index.html trong một thư mục: <script src = "./ js / main.js"> </ script> được khai báo trong html 5 là chính xác nhưng nếu bạn bỏ qua '. ' ký hiệu, nó sẽ không tải tập tin.
MaXi32

4
@ MaXi32 - Trong ví dụ của bạn, <script src="js/main.js"></script>sẽ tải tệp trong HTML5 cũng như./js/main.js
pmrotule

9

Một bản tóm tắt nhanh và nhỏ về các con đường

Đường dẫn tuyệt đối

http://website.com/assets/image.jpg
NẾU hình ảnh không có trên miền của bạn - hãy tìm hình ảnh đó


//website.com/assets/image.jpg
hình ảnh được tải bằng giao thức http hoặc https


Con đường tương đối

(Để sử dụng nội bộ nếu hình ảnh trên cùng một máy chủ)


image.jpg
hình ảnh ở cùng một nơi với tài liệu gọi hình ảnh!


./image.jpg
Tương tự như trên, hình ảnh ở cùng một nơi với tài liệu gọi hình ảnh!


/assets/image.jpg
Tương tự như Đường dẫn tuyệt đối, chỉ cần bỏ qua giao thức và tên miền
Đi tìm kiếm hình ảnh của tôi bắt đầu từ thư mục gốc của tôi /, hơn là vàoassets/


assets/image.jpg
tài sản thời gian này ở cùng một nơi với tài liệu, vì vậy hãy đi vào tài sản cho hình ảnh


../assets/image.jpg
Từ vị trí của tài liệu, quay trở lại một thư mục và đi vào ../assets


../../image.jpg
đi hai thư mục trở lại , có hình ảnh của tôi!


../../assets/image.jpg
đi hai thư mục trở lại ../../ và đi vào assets


Có cách nào để nói "đi đến gốc cuối cùng và sau đó đi theo con đường này" mà không cần sử dụng tên miền (nghĩa là, nếu bạn cần trang web để làm việc trong môi trường dàn dựng)? Hoặc bạn chỉ phải làm một cái gì đó như ../../../../../../../../../../../../../ .. /../../../../../../../../../../../../../../../../. ./../../images/image.jpg và hy vọng bao gồm mọi tình huống có thể xảy ra?
Nhà nguyện Mark

1
@Mark nếu tôi trả lời đúng câu hỏi của bạn, bạn cần "quay lại (thời gian không xác định) cho đến khi root, sau đó nhập images. Xem đường dẫn tương đối và ví dụ thứ ba/images/image. jpg
Roko C. Buljan

2

Vâng ./có nghĩa là thư mục bạn hiện đang ở.


8
Đây là một chút sai lệch. ./thisfile.txtkhông phải lúc nào cũng tương đương với /thisfile.txt. Nó hoàn toàn phụ thuộc vào thư mục mà mã đang thực thi.
Jon Newmuis

@JonathanNewmuis đã đúng ./thisfile.txt không rõ ràng /thisfile.txt
Coomie

Vậy nếu mã thực thi ở một nơi khác, ./sẽ đề cập đến vị trí ban đầu?
CodyBugstein

2

Ví dụ: các tệp css nằm trong thư mục có tên CSSvà các tệp html nằm trong thư mục HTMLvà cả hai tệp này đều nằm trong thư mục có XYZnghĩa là chúng tôi giới thiệu các tệp css trong html là

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

Ở đây ..di chuyển lên HTML
.đề cập đến thư mục hiện tạiXYZ

--- theo logic này, bạn chỉ cần tham khảo là:

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

3
Tài liệu tham khảo thứ hai "CSS/style.css"không làm việc cho tôi, có lẽ bạn có ý nghĩa "../CSS/style.css"?
ajax333221

-1

Để tham khảo danh sách tham khảo nhanh, cụ thể bạn có thể sử dụng như sau:

\. \ Thư mục gốc + Thư mục hiện tại (Tên ổ đĩa)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.