2012-01-03 5 views
37

मैं फेसबुक और यूट्यूब जैसी कई वेबसाइटों के लिए सीएसएस फाइलों को देख रहा हूं।सीएसएस में "*" का क्या अर्थ है?

* { 
margin: 0; 
padding: 0; 
} 

यह अजीब है क्रोम वेब डेवलपर उपकरण में है कि ब्लॉक को हटाने पेज के लेआउट को प्रभावित नहीं करता:

लगभग सभी उनमें से मैं इस कोड को देखते हैं।

इस कोड का क्या अर्थ है, और इसका उपयोग कब किया जाता है और क्यों?

+0

शायद ऐसा प्रतीत होता है क्योंकि सीएसएस उत्पन्न होता है। यह शायद डिफ़ॉल्ट मार्जिन और पैडिंग सेट करता है। –

+4

आप इस प्रश्न को देखना चाहते हैं [क्या एक सीएसएस रीसेट अभी भी जरूरी है?] (Http://stackoverflow.com/questions/3739154/is-a-css-reset-still-necessary) –

उत्तर

54

यह एक आम तकनीक एक सीएसएस रीसेट कहा जाता है। विभिन्न ब्राउज़र अलग-अलग डिफ़ॉल्ट मार्जिन का उपयोग करते हैं, जिससे साइट मार्जिन से अलग दिखती है। * का अर्थ है "सभी तत्व" (universal selector), इसलिए हम सभी तत्वों को शून्य मार्जिन और शून्य पैडिंग के लिए सेट कर रहे हैं, इस प्रकार उन्हें सभी ब्राउज़रों में समान दिखाना है।

+0

इस लिंक को आजमाएं: https://www.w3schools.com/cssref/sel_all.asp – Kuhan

2

यह एक वाइल्डकार्ड है और सभी HTML तत्वों के लिए margin और padding से 0 सेट करता है।

की तरह एक और अधिक दिलचस्प एक का प्रयास करें:

* { 
    font-size: 20pt; 
} 
8

* एक वाइल्डकार्ड

इसका मतलब है कि सभी तत्वों के लिए उन शैलियाँ लागू है।

इस उदाहरण में margin और padding सभी तत्वों पर 0 पर सेट किया गया है। सामान्य तत्वों पर विभिन्न तत्वों पर सभी मूल ब्राउज़र मार्जिन/पैडिंग को डिफ़ॉल्ट करने के लिए रीसेट सीएसएस फ़ाइलों के साथ यह आम है।

7

एस्टेरisk (*) एक वाइल्डकार्ड है और इसका मतलब सभी तत्व हैं।

* { 
    margin: 0; 
} 

, 0.

2

के सभी तत्वों के मार्जिन यह 0.

को मार्जिन और पृष्ठ पर सभी HTML तत्वों की गद्दी कुछ ब्राउज़र पहले से ही डिफ़ॉल्ट रूप से ऐसा कर सकते हैं रीसेट करता सेट लेकिन मामले में मैन्युअल रूप से सबकुछ रीसेट करने का प्रयास करना हमेशा उपयोगी होता है।

असल में, कई वेबसाइटें रीसेट.css (या समान) ले जाती हैं जो खोले जाने पर, आपको हर ब्राउज़र में सबकुछ रीसेट करने के लिए कई नियम दिखाई देंगे।

+0

डिफ़ॉल्ट रूप से कोई ब्राउज़र ऐसा नहीं करता है, क्योंकि यह HTML सामग्री को गैरकानूनी बना देगा। क्या आपके पास कोई उदाहरण है? –

+0

मैं कोई उदाहरण नहीं दे सका ... लेकिन मुझे पता है कि कितने अलग ब्राउज़र हैं, परियोजनाओं के फोर्क, मोबाइल फोन ब्राउज़र आदि। "मई" सुनहरा शब्द था :) – Oomta

1

यह सामान्य सीएसएस रीसेट का एक आम हिस्सा है। यह मूल रूप से सभी (*) तत्वों के सभी मार्जिन और पैडिंग को 0 पर सेट करता है। फिर आप अपनी आवश्यकताओं के अनुसार प्रत्येक तत्व को अपना मार्जिन और पैडिंग मान जोड़ने के लिए स्वतंत्र होते हैं।

1

सीएसएस में आपकी शैलियों के अतिरिक्त प्रत्येक वेब पेज पर कुछ डिफ़ॉल्ट शैलियों लागू होती हैं। ये डिफ़ॉल्ट शैलियों padding और margin<h1>, <li>, <p>, <table> आदि जैसे तत्वों के मानों को परिभाषित करते हैं। कष्टप्रद बात यह है कि अक्सर आपको अपने पृष्ठों को सही तरीके से देखने के लिए इन शैलियों को ओवरराइड करने की आवश्यकता होती है, लेकिन सभी ब्राउज़र निर्माता डिफ़ॉल्ट पर सहमत नहीं होते हैं। अक्सर अधिकांश डेवलपर्स को padding और margins से zero रीसेट करना सबसे आसान लगता है, इसलिए सब कुछ अपेक्षित व्यवहार करता है। *wildcard चयनकर्ता है और सभी तत्व प्रकारों से मेल खाता है। अनिवार्य रूप से वह शैली सभी पैडिंग/मार्जिन को सभी तत्वों के लिए शून्य पर रीसेट करने के लिए कहती है इसलिए किसी भी डिफ़ॉल्ट स्टाइलिंग को हटा दें।

1

*, वाइल्ड कार्ड है यह सभी तत्वों margin: 0; और padding: 0; चयनित तत्वों, जो इस मामले में सभी तत्वों को किया जाएगा के लिए मार्जिन और 0 के लिए गद्दी सेट का चयन करता है।

यह वेब विकास के लिए बहुत आसान है, मैं इसे हर साइट में उपयोग करता हूं।

+3

यह उल्लेखनीय है कि यह एक तकनीक है बहस के योग्य कई लोग रीसेट के लिए वाइल्ड कार्ड चयनकर्ता का उपयोग करने के खिलाफ सलाह देते हैं। लेकिन कई लोग सामान्य रूप से रीसेट के खिलाफ भी बहस करते हैं। यह कहने के लिए पर्याप्त है, यह सामान्य सर्वोत्तम अभ्यास की बजाय प्राथमिकता है। –