2010-02-06 9 views
33

मैं एक माता पिता <div> की पृष्ठभूमि कैसे बदल सकता है जब एक <input> या <a> है: focus'd (या किसी अन्य गतिशील छद्म वर्गको प्रभावित करने वाले माता-पिता तत्व: focus'd तत्व (शुद्ध सीएसएस + एचटीएमएल पसंदीदा)

जैसे

<div id="formspace"> 
<form> 
<label for="question"> 
How do I select #formspace for the case when a child is active?</label> 
<input type="text" id="question" name="answer"/></form></div> 
+0

नहीं: http: //en.wikipedia .org/wiki/Cascading_Style_Sheets # सीमाएं (द्वितीय बुलेट बिंदु) –

+0

नहीं, CSS3 के साथ भी नहीं। – graphicdivine

+0

धन्यवाद सब। बस जांच कर रहा है क्योंकि मैं शुद्ध सीएसएस और एचटीएमएल टैग आंदोलन के साथ किसी भी तरह से नहीं आ सकता था। मुझे जावास्क्रिप्ट पता था यह कर सकता था; बस अपने हाथों को साफ रखना चाहता था। –

उत्तर

27

दुर्भाग्यवश सीएसएस माता-पिता चयनकर्ताओं का समर्थन नहीं करता है। :(
तो यह करने के लिए एक ही रास्ता jQuery parent method तरह जावास्क्रिप्ट का उपयोग करने के लिए है

अद्यतन:। सीएसएस चयनकर्ता स्तर 4 माता पिता चयनकर्ताओं का समर्थन करेंगे http://www.w3.org/TR/selectors4/#subject

+0

[ऐसा लगता है जैसे अभिभावक चयनकर्ता इसे नहीं बनाएंगे।] (Http://css4.rocks/selectors-level-4/subject-of-selector.php) –

6

एक ही रास्ता मैं के बारे में सोच सकते हैं जावास्क्रिप्ट के साथ है:

function focusLink(isOnFocus) 
{ 
    if (isOnFocus) 
     document.getElementById('formspace').className = "<make a focus class name here>"; 
    else 
     document.getElementById('formspace').className = "<default class name here>"; 
} 

...

+०१२३५१६४१०
<input onFocus="focusLink(true)" onBlur="focusLink(false)"> 

आशा है कि मदद करता है!

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