Saya menyimpan lembar gaya di {root} / styles sementara gambar di {root} / gambar untuk situs web. Bagaimana cara memberikan jalur di lembar gaya untuk dilihat di direktori gambar untuk gambar yang ditentukan?
mis. Dalam background-image: url('/images/bg.png');
html
css
relative-path
aateeque
sumber
sumber
Berikut ini semua yang perlu Anda ketahui tentang jalur file relatif:
Dimulai dengan
/
kembali ke direktori root dan mulai dari sanaDimulai dengan
../
memindahkan satu direktori ke belakang dan mulai dari sanaDimulai dengan
../../
memindahkan dua direktori ke belakang dan mulai dari sana (dan seterusnya ...)Untuk maju , cukup mulai dengan sub direktori pertama dan terus maju.
Klik di sini untuk lebih jelasnya!
sumber
Penggunaan
../
:Anda dapat menggunakannya sesering yang Anda inginkan, misalnya
../../images/
atau bahkan pada posisi yang berbeda, misalnya../images/../images/../images/
(sama seperti../images/
tentunya)sumber
Di Chrome ketika Anda memuat situs web dari beberapa server HTTP, jalur absolut (mis.
/images/sth.png
) Dan jalur relatif ke beberapa direktori tingkat atas (mis.../images/sth.png
) Berfungsi.Tapi!
Saat Anda memuat (di Chrome!) Dokumen HTML dari sistem file lokal Anda tidak dapat mengakses direktori di atas direktori saat ini. Yaitu Anda tidak dapat mengakses
../something/something.sth
dan mengubah jalur relatif menjadi absolut atau apa pun tidak akan membantu.sumber
../
berfungsi dengan baik - atau setidaknya berfungsi dengan baik dalam kasus khusus ini!Misalkan Anda memiliki struktur file berikut:
Di CSS Anda dapat mengakses
image1
, misalnya, menggunakan baris../images/image1.png
.CATATAN : Jika Anda menggunakan Chrome, itu mungkin tidak berfungsi dan Anda akan mendapatkan kesalahan bahwa file tidak dapat ditemukan. Saya memiliki masalah yang sama, jadi saya baru saja menghapus seluruh riwayat cache dari chrome dan berhasil.
sumber
Jika Anda menyimpan lembar gaya / gambar dalam sebuah folder sehingga beberapa situs web dapat menggunakannya, atau Anda ingin menggunakan kembali file yang sama di situs lain pada server yang sama, saya menemukan bahwa browser / Apache saya tidak mengizinkan saya untuk pergi ke folder induk apa pun di atas URL root situs web. Hal ini tampaknya jelas karena alasan keamanan - seseorang tidak boleh menjelajahi server di mana pun selain folder web yang ditentukan.
Misalnya. tidak berfungsi: www.mywebsite.com/../images
Sebagai solusinya, saya menggunakan Symlinks:
Masuk ke direktori www.mywebsite.com Jalankan perintah ln -s ../images images
Sekarang www.mywebsite.com/images akan mengarah ke www.mywebsite.com/../images
sumber