2013-08-26 5 views
5

का जिक्र करते हुए मैं बेस टैग का उपयोग कर स्थानीय साइट-रूट सेट करने का प्रयास कर रहा हूं। निम्नलिखित कोड काम नहीं कर रहा है। क्या मुझसे कुछ गलत हो रही है? मैं आधार के रूप में mysite फ़ोल्डर कैसे सेट करूं?एचटीएमएल <base> टैग स्थानीय फ़ोल्डर

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <base href="file:///home/me/mysite"></base> 
     <title> Asset Take On Process </title> 
     <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 
     <link rel="stylesheet" type="text/css" href="/css/main.css" /> 
    </head> 
    <body> 
     some stuff 
    </body> 
    </html> 

साइट फ़ोल्डर संरचना

mysite 
    |___css 
    |___img 
    |___js 

और इतने पर ..

जब मैं वेब पृष्ठ यह बिल्कुल css फ़ोल्डर में main.css नहीं देखता लोड है।

+2

आपको किसी भी कार्यवाही से पहले इस प्रश्न को पढ़ना चाहिए http://stackoverflow.com/questions/1889076/is-it-recommended-to-use-the-base-html-tag –

+0

धन्यवाद @Mitz। यह जानना उपयोगी है। –

+1

DOCTYPE गलत है, जैसा कि आप देखते हैं कि आप दस्तावेज़ को सत्यापित करने का प्रयास करते हैं या नहीं। फ़्रेमसेट संस्करण केवल फ़्रेमसेट पृष्ठों के लिए है, जिसमें 'फ्रेमसेट' तत्व होता है। –

उत्तर

4

आपको लगता है कि/निकालते हैं, तो यह सुनिश्चित करना चाहिए कि यह वर्तमान पथ है, जो है, जब एक आधार टैग मौजूद है बंद रिश्तेदार होगा

http://localhost/website/. 

तुम भी पीछे जोड़ने के लिए/के अंत करने की आवश्यकता होगी href, यह इंगित करने के लिए कि यह एक फ़ोल्डर है।

पूर्ण काम कर उदाहरण:

<!doctype html> 
<html> 
<head> 
<base href="/test/" /> 
<script src="assets/test.js"></script> 
<body> 
hi 
</body> 
</html> 
  • वास्तव में आप जो पूछना पर निर्भर करता है, यह अभी भी रिश्तेदार है क्योंकि यह वर्तमान डोमेन बंद सापेक्ष है। लेकिन मैं इस पूर्ण को कॉल करना पसंद करता हूं क्योंकि यह वर्तमान डोमेन के आधार पर पथ से संकेत है, रूट से है। हालांकि, मुझे तकनीकी रूप से लगता है जो इसे चीजों की भव्य योजना में सापेक्ष बनाता है, और केवल वर्तमान डोमेन के संदर्भ में पूर्ण है। जो कुछ।

कृपया, इस लिंक

http://social.msdn.microsoft.com/Forums/ie/en-US/c51bb8b9-40ab-437b-a125-88b660f3e1ca/ie8-base-tag-issues

+0

धन्यवाद @ बैकट्रैक जो एक आकर्षण काम करता था। –

+0

@TahnoonPasha धन्यवाद – Backtrack

+0

'http: // localhost' वाला एक यूआरएल प्रश्न में 'file: //' URL से काफी अलग है। (आरंभ करने के लिए, बाद वाले को स्थानीय कंप्यूटर में किसी भी HTTP सर्वर की आवश्यकता नहीं है।) –

4

एक सही टैग

<base href="file:///home/me/mysite/"/> 

होगा यदि आप आधार पते के रूप में file:///home/me/mysite/ सेट करना चाहते हैं उल्लेख ताकि उदा css/main.cssfile:///home/me/mysite/css/main.css को संदर्भित करता है। स्लेश के महत्व पर ध्यान दें। में base में मान, अंतिम स्लैश के बाद कुछ भी अनदेखा किया जाता है: file:///home/me/mysite का अर्थ file:///home/me/ जैसा ही है।

यह एक भ्रमित विषय है, और यह कुछ ब्राउज़रों के कार्यान्वयन से और उलझन में है जो मूल्य में सापेक्ष यूआरएल का समर्थन कर सकता है; विनिर्देशों के अनुसार, केवल पूर्ण यूआरएल की अनुमति है।

आमतौर पर base तत्व का उपयोग करने का कोई कारण नहीं है। css/main.css या ../css/main.css जैसे संबंधित यूआरएल एचटीएमएल पेज के पते के सापेक्ष पते निर्दिष्ट करते हुए ठीक काम करते हैं। इसका अर्थ यह है कि साइट को सर्वर पर अपलोड होने पर उन्हें बदला नहीं जाना चाहिए।

+0

धन्यवाद @ जुक्काका। कोर्पेला कृपया मेरे प्रश्नों का वर्णन करने वाले प्रश्न का पालन करें मुद्दा मैं यहां सापेक्ष पथों के साथ हूं http://stackoverflow.com/questions/18442958/using-a-relative-url-checheme- प्रभावी रूप से। हालांकि यह एक उपयोगी जवाब है। –

3

बस अन्य उत्तर स्पष्ट करने के लिए:

आधार टैग एक स्लेश में समाप्त होना चाहिए। निम्न URL के स्लैश के साथ शुरू नहीं करना चाहिए:

यह तार्किक है, क्योंकि उन्हें एक साथ जोड़ने के लिए एक पूरा पता बनाता है। लेकिन यह counterintuitive है क्योंकि हम चीजों को हर जगह काम करने के लिए /images/image.jpg का उपयोग करने के लिए उपयोग किया जाता है।

+0

यह ब्राउज़र पर निर्भर करता है ... – yckart

संबंधित मुद्दे