2012-01-07 22 views
14

HTML बटन अक्षम करते समय, बटन टेक्स्ट में एक छाया जोड़ दी जाती है। मैं अपने आप बटन को स्टाइल कर रहा हूं और मैं केवल एक रंग (सफेद) नहीं चाहता हूं जिसमें कोई छाया नहीं है लेकिन मुझे नहीं पता कि इसे कुशलता से कैसे किया जाए।सीएसएस: अक्षम HTML बटन पर छाया हटाएं

मेरी पिछली विधि इसे सक्षम करने और बटन के होवर + सक्रिय राज्यों को दोबारा स्टाइल करना था और क्लिक वाई जावास्क्रिप्ट को अनदेखा करना था। आपको बताया, बहुत कुशल नहीं!

http://jsfiddle.net/gLfMX/

संपादित करें: छवि छाया (IE9 में देखा जा रहा) + एक ज़ूम संस्करण दिखाने के लिए।

enter image description here

उत्तर

4

झुकाव के घंटों के बाद, मैं निष्कर्ष पर आया हूं कि यह आईई के साथ नहीं किया जा सकता है।

चूंकि मैं jQuery का उपयोग करके सभी बटन क्लिक को संभालता हूं, इसलिए मैं किसी भी बटन को अनदेखा करता हूं जिसमें मेरा सीएसएस चयनित संपत्ति लागू होती है। माना जाता है कि यह शायद सबसे सुरुचिपूर्ण समाधान नहीं है, लेकिन यह क्रॉस-ब्राउज़र व्यूबाल है।

धन्यवाद निकोल और मदद के लिए danferth।

8

border:none; जोड़ने छाया से छुटकारा पाने के jsfiddle

+3

धन्यवाद, लेकिन मैं बटन के अंदर पाठ पर छाया के बारे में बात कर रहा हूँ, बटन सीमा नहीं। –

+0

मैं केवल यह देख रहा हूं कि 'आईई' संभवतः 'jQuery' और 'टेक्स्ट-छाया: कोई नहीं;' एक समाधान है। – danferth

+0

@ डैनफेरथ: समस्या केवल आईई 8 और 9 के लिए विशिष्ट है। ध्यान दें 9. नहीं 10, नहीं 11. –

0

यह भी काम करता है:

input[disabled] { 
    border: none; 
} 

http://jsfiddle.net/gLfMX/2/

इस तरह आप विशेष रूप से के बारे में चिंता किए बिना विकलांग इनपुट लक्षित कर सकते हैं दूसरों के साथ हस्तक्षेप।

+1

धन्यवाद लेकिन मैं बटन के अंदर पाठ पर छाया के बारे में बात कर रहा हूं, बटन सीमा नहीं। –

+0

हमम, मुझे फ़ायरफ़ॉक्स 9 में कोई भी टेक्स्ट छाया नहीं दिखाई दे रही है। यदि आप एक देखते हैं तो आप टेक्स्ट-छाया के साथ उपरोक्त चयनकर्ता को आजमा सकते हैं: कोई नहीं; –

+0

धन्यवाद निकोल। मैंने छाया दिखाने के लिए पोस्ट संपादित किया है। टेक्स्ट-छाया चयनकर्ता एक अंतर नहीं लग रहा है ... –

9

आप पहले ही अपना उत्तर पोस्ट कर चुके हैं, लेकिन यहां थोड़ी अधिक जानकारी है।

मेरे प्रयोगों से मैं एक ही निष्कर्ष तक पहुंच गया हूं: आईई पर, आप इसे सीएसएस से नहीं बदल सकते हैं। यहाँ पर क्यों।

अक्षम बटनों के रंग इस बात पर निर्भर करते हैं कि विंडोज for the "3D Objects" item in "Window Color and Appearance" (प्रदर्शन सेटिंग्स के तहत) दिखाने के लिए कॉन्फ़िगर किया गया है।

अक्षम बटन के डिफ़ॉल्ट रंग हैं: text = A0A0A0, छाया = सफेद। यदि उपयोगकर्ता ने डिफ़ॉल्ट को बदल दिया है तो वे अलग हो सकते हैं (विंडोज 7 में आपको इसे करने के लिए 'उन्नत सेटिंग्स' में जाना होगा), लेकिन लगभग सभी के पास ये होगा। वे एक अक्षम बटन के सिस्टम डिफ़ॉल्ट पृष्ठभूमि रंग फिट करने के लिए डिज़ाइन किए गए थे, जो F4F4F4 है।

enter image description here

इस समस्या के लिए मेरे समाधान सीएसएस डिजाइन करने के लिए इतना है कि कम से कम डिफ़ॉल्ट सेटिंग्स के लिए, IE के तहत एक विकलांग बटन ठीक दिखेगा है - सबसे अच्छा तरीका है जब F4F4F4 करने के लिए निष्क्रिय पृष्ठभूमि सेट करने के लिए है:

button[disabled], a[disabled] { 
    background-color: #f4f4f4; 
} 

आप Bootstrap मेरे जैसे प्रयोग कर रहे हैं, तो आप इस बजाय करना चाहिए:

.btn[disabled], .btn.disabled[disabled] { 
    background-color: #f4f4f4; 
} 

आप केवल आईई के लिए इसे सक्षम करने के लिए कुछ सशर्त चयनकर्ता भी जोड़ सकते हैं।

1

बटन के अंदर पाठ पर छायांकन को हटाने का एक उदाहरण यहां दिया गया है। मैं अपने मेनू बटन पर अपने छाया से छुटकारा पाने की कोशिश कर रहा था।

सीएसएस में मेरे शीर्ष मेनू स्टाइल के बाद, मैंने अपने नियमित मेनू स्टाइल की तलाश की। जहां भी आप पहली बार "टेक्स्ट-छाया" स्टाइल देखते हैं, वहां आपकी समस्या निहित है। मैं मेरा मिली:

#menu a{display:block;line-height:35px;padding:0 14px;text-decoration:none;color: 
    #77778b;font-family:'Oswald', Arial, sans-serif;text-shadow:none;} 

मेरे पाठ छाया #FFFFFF स्थापित किया गया था कुछ स्थिति के लिए आवेदन किया। मैंने बस इस स्टाइल और बम को हटा दिया, मेरे बटन पर और अधिक छाया नहीं।

बस जहाँ भी "पाठ-छाया" अपने मेनू सीएसएस में पहले लागू किया जाता के लिए देखो और यह निर्धारित करने के लिए "पाठ-छाया: कोई नहीं"

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