2012-11-09 7 views
5

मैं एचटीएमएल तत्व सीएसएस मार्जिन मान को पूर्ण पिक्सल में परिवर्तित करने के लिए सबसे सरल और क्रॉस ब्राउज़र तरीका ढूंढ रहा हूं। उदाहरण के लिए कहें मार्जिन "ऑटो" है। मैं किसी भी जेएस ढांचे का उपयोग नहीं कर सकता। , http://jsfiddle.net/VxccZ/सीएसएस मार्जिन वैल्यू को पिक्सेल में केवल सादा जावास्क्रिप्ट के साथ कैसे परिवर्तित करें?

अद्यतन

आईई 8 वर्ष और उससे के लिए (है कि इस विधि का समर्थन नहीं करते):

var style = window.getComputedStyle(element, null); 
// style.marginLeft 

यहाँ एक काम डेमो है:

+0

तो, आप 'मार्जिन: ऑटो' से एक विशिष्ट पिक्सेल मान में परिवर्तन का उपयोग करना चाहते हैं? –

+0

यह सिर्फ एक विशेष मामला है, लेकिन हाँ। मैं किसी भी मार्जिन को एक विशिष्ट पिक्सेल मान – gztomas

उत्तर

2

आप window.getComputedStyle विधि का उपयोग करना चाहते हैं अपने तत्व की currentStyle संपत्ति का उपयोग करें:

var style = element.currentStyle; 
// style.marginLeft 

संक्षेप में:

var getMarginLeft = function (element) { 
    var style; 
    if (window.getComputedStyle) { style = window.getComputedStyle(element, null); } 
    else { style = element.currentStyle; } 

    return style.marginLeft; 
}; 

मैं नहीं कर रहा हूँ 100% यकीन है कि currentStylemargin: auto के लिए एक अंकीय मान की सुविधा है। आपको खुद को आजमा देना होगा। मैं खुद को मैक पर नहीं कर सकता।

+0

में परिवर्तित करना चाहता हूं अच्छी चाल, मैंने इसे कहीं भी नहीं देखा है। क्या यह वास्तव में क्रॉसब्रोसर है? – Martin

+0

आईई 9 + केवल। आप IE के पुराने संस्करणों में 'element.currentStyle' का उपयोग कर सकते हैं। मुझे जवाब अपडेट करने दें। –

+0

वह मूल्य को परिवर्तित करने के लिए देख रहा है न कि इसे अभी पुनर्प्राप्त करें। –

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