2016-02-01 7 views
32

सूची टैग के साथ ग्रिड कॉलम, मुझे हर 3 कॉलम प्रति सही क्रम में प्रदर्शित करने की आवश्यकता है, प्रत्येक अतिरिक्त HTML सूची तत्वों के लिए स्वत: चौड़ाई सक्षम है।सफारी को छोड़कर सभी ब्राउज़रों पर फ्लेक्सबॉक्स कोड काम कर रहा है। क्यूं कर?

यह मेरा उदाहरण है:

<style> 
 
     ul { 
 
      margin: 0; 
 
      padding: 0; 
 
      display: -webkit-flex; 
 
      display: flex; 
 
      -webkit-flex-wrap: wrap; 
 
      -ms-flex-wrap: wrap; 
 
      flex-wrap: wrap; 
 
      -webkit-flex-direction: column; 
 
      -ms-flex-direction: column; 
 
      flex-direction: column; 
 
      height: 150px; 
 
      width:auto; 
 
     } 
 
    
 
     li { 
 
      float: left; 
 
      display: inline-block; 
 
      list-style: none; 
 
      position: relative; 
 
      height: 50px; 
 
      width: 50px; 
 
     } 
 
    </style>
<ul> 
 
    <li>1</li> 
 
    <li>2</li> 
 
    <li>3</li> 
 
    <li>4</li> 
 
    <li>5</li> 
 
    <li>6</li> 
 
    <li>7</li> 
 
    <li>8</li> 
 
    <li>9</li> 
 
    <li>10</li> 
 
    <li>11</li> 
 
    <li>12</li> 
 
    </ul>
यह वही है मैं अब तक की कोशिश की है और हर दूसरे ब्राउज़र पर बिलकुल ठीक लेकिन सफ़ारी ब्राउज़र के साथ संगत नहीं काम करता है जब तक मैं इस जोड़ें: display: -webkit-flex;

मैं इस तरह उत्पादन परिवर्तित करना चाहते हैं:

1 4 7 10 
2 5 8 11 
3 6 9 12 

यह महत्वपूर्ण है कि मैं इस सफ़ारी ब्राउज़र के लिए काम अब तक मैं नहीं कर सकते सब पर इस समस्या को हल करने के लिए लगता है, मैं किसी भी मदद :)

उचित होगा मिलता है

टेस्ट लिंक:

http://jsfiddle.net/rafcastro77/3zd7yspg/59/

उत्तर

58

flexbox एक CSS3 तकनीक है। इसका मतलब है कि यह अपेक्षाकृत नया है और कुछ ब्राउज़र फ्लेक्स गुणों के लिए पूर्ण समर्थन प्रदान नहीं करते हैं।

  • आईई 8 और 9 समर्थन flexbox नहीं है:

    यहाँ एक विवरण दिया गया है। यदि आप इन ब्राउज़रों में फ्लेक्स गुणों का उपयोग करना चाहते हैं, तो अपना समय बर्बाद न करें। flexbox polyfill ने थोड़ी देर के लिए राउंड बनाये, लेकिन यह अच्छी तरह से काम नहीं करता था और अब इसे बनाए रखा नहीं जाता है।

  • आईई 10 previous version of flexbox का समर्थन करता है और vendor prefixes की आवश्यकता है। ध्यान रखें कि वर्तमान spec से कुछ गुण IE10 में समर्थित नहीं हैं (जैसे flex-grow, flex-shrink और flex-basis)। Flexbox 2012 Property Index देखें।

  • आईई 11 अच्छा है, लेकिन छोटी गाड़ी है। यह current flexbox standard पर आधारित है। कुछ समस्याओं के लिए this page पर ज्ञात ISSUES टैब देखें। यह भी देखें: flex property not working in IE

  • क्रोम, फ़ायरफ़ॉक्स और एज के साथ आप सब ठीक हैं। आपको मामूली बग और असंगतताएं मिलेंगी लेकिन आमतौर पर आसान फिक्स होते हैं। आपको Implied Minimum Flex Sizing से अवगत होना चाहिए, जो कभी-कभी आकार और स्क्रॉलबार समस्याओं का कारण बनता है।

  • सफारी संस्करण 9 और ऊपर उपसर्ग के बिना वर्तमान flexbox spec का समर्थन करते हैं। हालांकि, पुराने सफारी संस्करणों को -webkit- उपसर्गों की आवश्यकता होती है। कभी-कभी min-width और max-width संरेखण समस्याओं का कारण बनता है जिसे flex समकक्षों के साथ हल किया जा सकता है। Flex items not stacking properly in Safari

देखें flexbox ब्राउज़र समर्थन की एक पूरी समीक्षा के लिए, इस पृष्ठ को देखें: एक त्वरित तरीका कई (लेकिन जरूरी नहीं सभी) विक्रेता उपसर्गों Autoprefixer को जोड़ने के लिए के लिए http://caniuse.com/#search=flex

।सफारी के लिए, this article-webkit- उपसर्गों के लिए देखें कि कुछ उपसर्ग जनरेटर में शामिल नहीं है।

सामान्य फ्लेक्स कीड़े और उनके कामकाज की एक सूची के लिए Flexbugs देखें।

इसके अलावा, इस साइट पर, वहाँ है:

8

यह मेरे लिए काम करता प्रदर्शन: -webkit-इनलाइन बॉक्स; सफारी में

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