2008-09-25 20 views
63

में मंडराना मुझे पता है कि सीएसएस शैलियों को एम्बेड सीधे HTML टैग वे प्रभावित में सीएसएस के उद्देश्य के बारे में ज्यादा हरा देता है लेकिन कभी कभी यह डीबगिंग उद्देश्यों के लिए उपयोगी है, के रूप में:इनलाइन शैली के रूप में कार्य करने के लिए: सीएसएस

<p style="font-size: 24px">asdf</p> 
एक का एक टैग शैली विशेषता में

a:hover {text-decoration: underline;} 

:

जैसा कोई नियम एम्बेड करने के लिए वाक्य रचना क्या है? यह स्पष्ट रूप से यह नहीं है ...

<a href="foo" style="text-decoration: underline">bar</a> 

... क्योंकि यह हर समय लागू होता है, जैसा कि होवर के दौरान होता है।

+0

सैद्धांतिक रूप से, अगर आप मंडराना कुछ गतिशील बनाने की कोशिश कर रहे हैं, आप जावास्क्रिप्ट का उपयोग एक स्टाइलशीट मौजूदा चादरों की window.document.styleSheets सूची का उपयोग करते हुए एक हॉवर नियम सुई सकता है। – GAgnew

+0

https: // stackoverflow भी देखें।कॉम/प्रश्न/52 9 3280/सीएसएस-छद्म-कक्षाओं के साथ-इनलाइन-शैलियों – rogerdpack

उत्तर

69

मुझे डर है कि यह नहीं किया जा सकता है, छद्म-वर्ग चयनकर्ताओं को ऑनलाइन सेट नहीं किया जा सकता है, आपको इसे पृष्ठ पर या स्टाइलशीट पर करना होगा।

मैं उल्लेख करना चाहिए कि तकनीकी रूप से आप यह करने के लिए according to the CSS spec में सक्षम होना चाहिए, लेकिन अधिकांश ब्राउज़र का समर्थन नहीं करते यह

संपादित करें: मैं बस किया था इस के साथ एक त्वरित परीक्षण:

<a href="test.html" style="{color: blue; background: white} 
      :visited {color: green} 
      :hover {background: yellow} 
      :visited:hover {color: purple}">Test</a> 

और यह आईई 7, आईई 8 बीटा 2, फ़ायरफ़ॉक्स या क्रोम में काम नहीं करता है। क्या कोई और किसी अन्य ब्राउज़र में परीक्षण कर सकता है?

+2

यह बहुत कम प्राथमिकता सीएसएस 3 कार्यरत मसौदा है जिसे छह वर्षों में अपडेट नहीं किया गया है। कल्पना से: 'संदर्भ सामग्री के रूप में डब्ल्यू 3 सी वर्किंग ड्राफ्ट का उपयोग करना या "काम प्रगति पर" के अलावा उन्हें उद्धृत करना अनुचित है। ' – Jim

+1

सच है, लेकिन ब्राउज़र कुछ CSS3 नियमों को लागू करते हैं, * शायद * इस संदर्भ में गलत शब्द है –

+0

ब्राउज़र आमतौर पर सीएसएस सुविधाओं को लागू करते हैं जो आगे के विकास राज्य में हैं, उदा। अस्पष्टता सीएसएस रंग (अंतिम कॉल) से है और मीडिया क्वेरीज एक उम्मीदवार सिफारिश है। – Jim

17

आप केवल डीबगिंग हैं, तो आप जावास्क्रिप्ट का उपयोग कर सकते सीएसएस संशोधित करने के लिए:

<a onmouseover="this.style.textDecoration='underline';" 
    onmouseout="this.style.textDecoration='none';">bar</a> 
+1

जेएसएफ के साथ समाधान के लिए खोजे और इससे मुझे इसे ठीक करने में मदद मिली। onmousemove = "this.style.color = '## {cc.attrs.color}'," onmouseout = "this.style.color = 'white';" – kdoteu

16

यदि यह डिबगिंग के लिए है, बस मँडरा के लिए एक सीएसएस वर्ग को जोड़ने (के बाद से तत्वों से अधिक वर्ग हो सकता है):

a.hovertest:hover 
{ 
text-decoration:underline; 
} 

<a href="http://example.com" class="foo bar hovertest">blah</a> 
+2

यह शायद सबसे निकटतम है जिसे आप वांछित प्रभाव पर जा रहे हैं –

-1

मुझे नहीं लगता कि jQuery या तो छद्म चयनकर्ताओं का समर्थन करता है, लेकिन यह एक त्वरित तरीका एक ही पृष्ठ पर एक, कई, या अपने समान नियंत्रण और टैग के सभी ईवेंट जोड़ने के लिए प्रदान करता है।

सबसे अच्छा, आप घटना को बांध सकते हैं और यदि आप चाहें तो स्क्रिप्ट की एक पंक्ति में इसे सब कुछ कर सकते हैं। उन्हें सभी को चालू या बंद करने के लिए मैन्युअल रूप से सभी HTML को संपादित करने से कहीं अधिक आसान है। फिर फिर से, क्योंकि आप सीएसएस में ऐसा ही कर सकते हैं, मुझे नहीं पता कि यह आपको कुछ भी खरीदता है (jQuery सीखने के अलावा)।

7

एक सरल समाधान:

<a href="#" onmouseover="this.style.color='orange';" onmouseout="this.style.color='';">My Link</a> 

या

<script> 
/** Change the style **/ 
function overStyle(object){ 
    object.style.color = 'orange'; 
    // Change some other properties ... 
} 

/** Restores the style **/ 
function outStyle(object){ 
    object.style.color = 'orange'; 
    // Restore the rest ... 
} 
</script> 

<a href="#" onmouseover="overStyle(this)" onmouseout="outStyle(this)">My Link</a> 
1

मैं एक साथ onmouseover का उपयोग कर सीएसएस के बिना और व्यवहार onmouseout मंडराना पॉपअप बनाने के लिए इच्छुक किसी के लिए एक त्वरित समाधान डाल दिया।

http://jsfiddle.net/Lk9w1mkv/

<div style="position:relative;width:100px;background:#ddffdd;overflow:hidden;" onmouseover="this.style.overflow='';" onmouseout="this.style.overflow='hidden';">first hover<div style="width:100px;position:absolute;top:5px;left:110px;background:white;border:1px solid gray;">stuff inside</div></div> 
संबंधित मुद्दे