2011-01-22 12 views
8

में काम नहीं कर रहा है मेरे पास स्टाइल का एक सेट है जिसे पहले पृष्ठ पर स्टाइल एट्रिब्यूट के अंदर बनाया गया था।सीएसएस स्टाइलशीट

मैं इसे पृष्ठ पर स्वयं स्टाइलशीट में स्थानांतरित करने के लिए स्थानांतरित करना चाहता हूं।

हालांकि, जब मैं इसे एक .css फ़ाइल में ले जाता हूं, पृष्ठ तोड़ता है, कोड को वापस HTML दस्तावेज़ पर ले जाता है और यह फिर से ठीक काम करता है।

यह बिल्कुल कोई समझ नहीं आता है, एक शैली से एक सीएसएस फ़ाइल में शैलियों को ले जाने से कोड को तोड़ना चाहिए?

मैं कुछ याद आ रही है? मैं किसी भी कोड को नहीं बदल रहा हूं, इसकी बस एक कॉपी और पेस्ट है।

+0

यह एक मूक सवाल लग सकता है लेकिन आप अपने पृष्ठ के अंदर से सीएसएस फ़ाइल को संदर्भित करते हैं? – Mihai

+2

आप स्पष्ट रूप से "आपकी समस्या को हल करने में आपकी सहायता के लिए किसी के लिए पर्याप्त जानकारी" खो रहे हैं। विवरण पोस्ट करें। उदाहरण के लिए, आप अपनी HTML फ़ाइल में सीएसएस फ़ाइल कैसे शामिल कर रहे हैं? – DwB

+0

हम उदाहरण के बिना आपकी मदद नहीं कर सकते .. – Yorian

उत्तर

20

यह अंधेरे में सिर्फ एक शॉट है (इस पोस्ट के समय) आपने स्रोत कोड प्रदान नहीं किया है।

सुनिश्चित करें कि आप HTML दस्तावेज़ के head में एक link टैग का उपयोग कर अपने स्टाइलशीट लिंक कर रहे हैं सुनिश्चित करें।

यदि आप था: स्टाइलशीट से जोड़ने के लिए

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

:

<style type="text/css"> 
/* <![CDATA[ */ 
#someid 
{ 
    margin: 0; 
    padding: 3px 12px; 
} 
/* ]]> */ 
</style> 

आप के साथ अपने सीएसएस फ़ाइल में

#someid 
{ 
    margin: 0; 
    padding: 3px 12px; 
} 

की आवश्यकता होगी।

कुछ आम नौसिखिया गलतियों में शामिल हैं:

  • <style type="text/css" src="path/to/style.css">: क्योंकि यह <script> टैग, जो मतलब होगा करने के लिए इसी तरह की एक वाक्य रचना है, लेकिन अवैध है
  • <link rel="stylesheet" src="path/to/style.css">: लेकिन link तत्वों का उपयोग href
  • src नहीं
  • शरीर के भीतर link तत्व रखे: हालांकि ब्राउज़र शरीर में link तत्वों का प्रबंधन करने के लिए प्रवृत्त होंगे, कुछ त्रुटियां होने की संभावना है, और यह परिभाषित व्यवहार नहीं है
  • एक डॉक्टरेट घोषणा निर्दिष्ट नहीं करता है: ब्राउज़र को क्विर्क मोड में जाने की अनुमति देता है, जो कभी एक अच्छा विचार नहीं है।
+0

+1 यह दिखाने के लिए कि यह कैसे करें। मुझे संदेह है कि अब आप गलत नहीं जा सकते हैं;) – Blender

+0

आपकी मदद के लिए धन्यवाद, यह बहुत सराहना की है, हालांकि मुझे लगता है कि मेरी समस्या है, थोड़ी अधिक परीक्षण के बाद और अधिक ब्राउज़र संबंधित है, जैसा कि IE8 पर है/7 और एफएफ 4 और सफारी यह ठीक काम करता है, लेकिन क्रोम में, जब मैं फ़ाइलों को स्थानीय फाइलों के रूप में चलाता हूं, तो यह भी ठीक है, लेकिन मेरे सर्वर पर अपलोड करने के बाद, कुछ तत्व आगे के बजाए स्थानांतरित हो रहे हैं। जो कोई समझ नहीं आता है, लेकिन अगर मैं शैलियों को HTML में वापस ले जाता हूं, तो यह ठीक काम करता है। क्या क्रोम में कोई बग है जो यह कर रहा है? या कुछ और? –

3

आपको यह सुनिश्चित करना चाहिए कि स्टाइलशीट ठीक से आयात किया गया हो। कभी कभी @import अच्छी तरह से काम नहीं करता है, तो उसके अनुसार उपयोग नहीं किया, इसलिए हमेशा अपने स्टाइलशीट संदर्भ:

<link rel="stylesheet" type="text/css" href="name-of-stylesheet.css" />

हमेशा के रूप में यह एक आत्म बंद टैग है <link> टैग बंद करने के लिए याद है। मुझे लगता है कि @zzzzBov इसका जिक्र करना भूल गया।

अंत में, यह है कि अगर काम नहीं करता है, शारीरिक रूप से (</head> खंड ऊपर) लिख कर शैलियों में से कुछ को ओवरराइड करने की कोशिश की तरह कुछ:

<style type="text/css"> 
    body { background: blue; } 
    * { color: red; } 
</style> 

करें और देखें कि है कि आप एक नीले रंग की पृष्ठभूमि और लाल देता है रंगीन पाठ यह होना चाहिए। उसके बाद, संदर्भ विधि को लागू करने का प्रयास करें और सुनिश्चित करें कि आप स्टाइलशीट फ़ाइल को सही निर्देशिका में संदर्भित करते हैं।

गुड लक!

+0

आपको एक्सएमएल/एक्सएचटीएमएल में एकल टैग को बंद करने के लिए केवल * * * की आवश्यकता है, और फिर भी, ब्राउज़र बहुत क्षमा कर रहे हैं। – zzzzBov

+0

@z: स्पष्टीकरण के लिए धन्यवाद। सराहना करें कि – Amit

0

मैं एक ही समस्या थी, लेकिन कारण कोड में कुछ गलती लेकिन तथ्य यह है कि .css फ़ाइल उस में संशोधन करने के बाद कुछ देरी के साथ लोड किया गया था नहीं था। परिवर्तन को अद्यतन करने के लिए सर्वर को 5-10 मिनट की आवश्यकता थी।

+0

हाय और स्टैक ओवरफ्लो में आपका स्वागत है! कृपया [प्रश्न पुस्तिका का उत्तर कैसे दें] पढ़ें (http://stackoverflow.com/questions/how-to-answer)। यह साइट एक प्रश्नोत्तर साइट है जो फोरम नहीं है। क्या आप अपने उत्तर में कुछ अतिरिक्त विवरण जोड़ सकते हैं? यह थोड़ा अस्पष्ट है। – slm

1

मुझे यह समस्या भी थी, और कारण यह था कि पथ को कुछ यूआरएल() संदर्भों के लिए अद्यतन किया जाना था क्योंकि सीएसएस फ़ाइल उस HTML फ़ाइल की तुलना में किसी अन्य फ़ोल्डर में थी जिसे पहले से बुलाया गया था।

तो मूल रूप से

background-image: url('patterns/debut_dark.png'); 

background-image: url('../patterns/debut_dark.png'); 
0

में परिवर्तित करने को शामिल न करें अपने .css फ़ाइल में <style type="text/css"></style> था।

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