2012-01-26 12 views
11

CSS Grid Layout, Editor’s Draft, 21 November 2011क्या वेबकिट के लिए CSS3 ग्रिड लेआउट का कामकाजी कार्यान्वयन है?

मैं एक प्रोटोटाइप है कि चयनित डिवाइस और ब्राउज़र पर ग्राहक को दिखाया जाएगा उत्पादन के बीच में हूँ। मैं इस समय क्रॉस-ब्राउज़र संगतता के बारे में चिंतित नहीं हूं।

IE10 डेवलपर पूर्वावलोकन निम्नलिखित है:

display: -ms-grid; 
-ms-grid-columns: ; 
-ms-grid-rows: ; 
-ms-grid-column: ; 
-ms-grid-row: ; 
-ms-grid-row-align: stretch; 
columns: ; 
column-fill: auto; 
column-gap: ; 

मोज़िला ऊपर के समान होने (मैं परीक्षण नहीं किया है कि क्या यह, काम करता है अभी तक) को eludes। हालांकि, एक बहुत अलग कार्यान्वयन करने में समस्या होती वेबकिट:

display: -webkit-box; 
-webkit-columns: ; 
-webkit-column-gap: ; 

अब, वेबकिट एक ही विनिर्देश उपयोग कर रहा है, या एक पूरी तरह से अलग मॉडल के लिए है? यह एक ही विनिर्देश उपयोग कर रहा है, तो आप मुझे बता सकते हैं क्या वाक्य रचना के लिए है:

grid-columns: ; 
grid-rows: ; 
grid-column: ; 
grid-row: ; 

और, यदि यह एक अलग मॉडल का उपयोग कर रहा है, तुम मुझे पता है कि वाक्य रचना है तो कृपया सकता है और यह कैसे से अलग है एमएस ई 10। संदर्भों की सराहना की जाएगी।

यह ध्यान देने योग्य है कि मेरे पास Google क्रोम कैनरी स्थापित है, साथ ही वेबकिट पर ग्रिड का परीक्षण करने के लिए सफारी का नवीनतम संस्करण भी है।

+0

यह ध्यान देने योग्य है कि Google क्रोम में फ्लेक्स बॉक्स लेआउट का एक कामकाजी मॉडल है, जिसे मैं फ़ॉलबैक के रूप में उपयोग कर सकता हूं, लेकिन यह बहुत अलग तरीके से काम करता है। मैं एक समान मॉडल का उपयोग करना पसंद करूंगा। – DigiKev

+0

मैं लेआउट के लिए सीएसएस ग्रिड के बारे में बहुत उत्साहित हूं। रुचि के लिए प्रस्ताव यहां दिया गया है: http://www.w3.org/TR/css3-grid-layout/ –

उत्तर

5

http://caniuse.com/css-grid

मार्च 2017 की स्थिति के अनुसार काफी कुछ ब्राउज़रों अब सीएसएस ग्रिड लेआउट का समर्थन:


वर्ष जवाब:

वहाँ, कार्यों में कुछ यहाँ इसके कार्यान्वयन के लिए पूर्ण मुद्दा पेड़ है:

https://bugs.webkit.org/showdependencytree.cgi?id=60731&hide_resolved=0

यहाँ this file से कुछ सीएसएस है:

.gridWithFixed { 
    display: -webkit-grid; 
    -webkit-grid-columns: 7px 11px; 
    -webkit-grid-rows: 17px 2px; 
} 

आप आशय देख सकते हैं। दुर्भाग्यवश, वे केवल सीएसएस को पार्स करने के लिए ही मिल गए हैं।

तो, ऐसा लगता है कि अभी वेबकिट के लिए इसका कोई कार्यान्वयन नहीं है।

जबकि Grid Layout बहुत खराब समर्थन है, Flexbox में सभ्य समर्थन (जाहिर है, आईई 10 सहित) है। मेरा सुझाव है कि आप इसके बजाय फ्लेक्सबॉक्स का उपयोग करें।

+2

लेकिन CSS3-ग्रिड-लेआउट की शक्ति की तुलना में flexbox * कुछ नहीं * है! * Nooooo! * इसके अलावा, फ्लेक्सबॉक्स व्यापक रूप से पर्याप्त रूप से समर्थित नहीं है कि आपको इसका उपयोग करने में सहज होना चाहिए ([caniuse.com] (http://caniuse.com/flexbox) <60% उपयोगकर्ताओं का कहना है), और केवल अधिकांश ब्राउज़र आंशिक रूप से इसका समर्थन करते हैं। CSS3 ग्रिड spec पूरी तरह से flexbox की आवश्यकता को खत्म कर देगा, क्योंकि यह सब कुछ कर सकता है कि flexbox माना जाता है और अधिक। – naught101

+3

मैं इस बात से सहमत नहीं हूं कि ग्रिड स्पेक एक फ्लेक्सबॉक्स की आवश्यकता को खत्म कर देगा। ऐसी चीजें हैं जो कि ग्रिड में फ्लेक्सबॉक्स अच्छे हैं। –

+1

@thirtydot अगर आप अपना उत्तर अपडेट करना चाहते हैं, तो सफारी 10.1 अब ग्रिड के साथ भेज दिया गया है। – gsnedders

4

Chrome CanaryCSS Grid Layout TR 20130910 लागू करता है। मुझे कुछ संपत्ति नामों में मामूली अंतर मिला है। स्टीवन ब्रैडली summarizes the TR और ग्रिड लेआउट का उपयोग शुरू करने के तरीके के लिए instructions and examples प्रदान करता है। कैनरी में प्रयोगात्मक सुविधाओं को सक्षम करने के लिए, निम्नलिखित को एड्रेस बार में कॉपी करें और पेस्ट करें

chrome://flags/#enable-experimental-web-platform-features 

और 'सक्षम' पर क्लिक करें।