IE में काम नहीं कर रहे तत्व के लिए प्रारंभिक चौड़ाई का उपयोग करें


107

मेरे पास एक ग्राफ़ प्लगइन है जो कैनवास और <table>उसके कंटेनर में एक किंवदंती सम्मिलित करता है । इस प्लगइन tableमें कोई widthपरिभाषित नहीं है और मेरे सीएसएस में उस कंटेनर के अंदर तालिकाओं के लिए एक चौड़ाई है जो मेरे प्लगइन सम्मिलित थे।

तो, नई div table{ width: 100%}CSS से विरासत में मिली है और गलत प्रदान की गई है।

मैंने उपयोग करने की कोशिश की width: initial;, क्रोम पर अच्छा लग रहा है, लेकिन IE को यह पसंद नहीं है कि ब्राउज़र संगतता की जांच करें

मैं स्क्रिप्ट / प्लगइन में इनलाइन सीएसएस को बदलने / मजबूर करने के लिए मानता हूं क्योंकि इसे किसी भी वातावरण में काम करना है।

यहाँ सबसे अच्छा समाधान क्या है?


क्या आपने न्यूनतम चौड़ाई निर्धारित करने का प्रयास किया है? क्या यह काम करता है?
बौद्ध धर्म

@ BuddhistBeast, उस बारे में नहीं सोचा था! लेकिन कोशिश की है कि अभी और क्रोम पर काम नहीं किया।
रिकार्ड

जवाबों:


177

जैसा आपने कहा, आम तौर width: autoपर एक समान प्रभाव होगा। नियम होना:

.my-selector {
    width: auto;
    width: initial;
}

initialयदि यह समर्थित है और autoअन्यथा, इसका उपयोग करने का कारण बनना चाहिए ।


3
इससे मेरा मुद्दा ठीक हो गया। धन्यवाद।
dchayka

2
बस मुझे एक घंटा बचाया। धन्यवाद।
स्किटरम

2
एक नोट के रूप में, initial है एक वैध संपत्ति के मूल्य ( developer.mozilla.org/en-US/docs/Web/CSS/initial )। लेकिन (यदि आप पिछले लिंक में "ब्राउज़र संगतता" तक स्क्रॉल करते हैं), तो कोई IE संस्करण इसका समर्थन नहीं करता है।
gtramontina

4
यह एक कमबैक के रूप में जाना जाता है और सीएसएस में एक बहुत ही सामान्य कोडिंग पैटर्न है। इसके अलावा, उपयोग करने width: autoसे न केवल एक समान प्रभाव पड़ेगा, लेकिन इसका सटीक समान प्रभाव होगा, क्योंकि autoइसे संपत्ति के लिए प्रारंभिक मूल्य के रूप में परिभाषित किया गया हैwidth
छरवे

6

width: auto;इनलाइन का उपयोग करना , स्क्रिप्ट के अंदर क्रोम, FIrefox और IE 11. पर समस्या को हल करता है। बस यकीन नहीं है कि बेहतर तरीका है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.