मैं ओओसीएसएस और बीईएम दोनों को शर्मिंदा कर रहा हूं। कुछ समय के लिए सम्मेलन नामकरण और कभी वापस देखो नहीं होगा। उन लोगों के लिए जो दावा कर रहे हैं कि यह सिर्फ "आकर्षक buzz-word" या "सीएसएस पहले से ही यह सामान करता है", इन दोनों पद्धतियों का उपयोग करके सीएसएस लिखने की क्षमता को समझ में नहीं आता है।
आइए वस्तुओं की सबसे सरल, लिंक के साथ एक सूची देखें। यह कई अलग अलग जायके में आता है:
मेनू
उपकरण पट्टियाँ
टैब्स
पैनलों (बूटस्ट्रैप)
OOCSS में, हम आम लगता है इनमें से प्रत्येक के गुण और आधार वस्तु बनाते हैं । मैं आमतौर पर इसे नौसेना कहते हैं।
/* Nav
=================================================*/
/* B
---------------------------------------------*/
.nav
{
margin-left: 0;
padding-left: 0;
list-style: none;
}
/* E
---------------------------------------------*/
.nav__item
{
float: left;
}
.nav__link
{
display: block;
color: inherit;
text-decoration: none;
}
/* M
---------------------------------------------*/
.nav--right
{
float: right;
}
.nav--stack .nav__item
{
float: none;
}
आप कुछ चीज़ों पर ध्यान देगा:
नव आधार वस्तु ब्लॉक तत्व
बाल तत्वों nav_
संशोधक लगी होती हैं पर लागू होने वाले है एनवी के साथ prefixed हैं -
एक संशोधक एक विकल्प है जो व्यवहार को बदलता है। उदाहरण के लिए - सीधे सही नौसेना तैरता है।
एक बार जब मेरा मूल वस्तु विचित्र हो जाए, तो मैं खाल बना देता हूं जो वस्तु की उपस्थिति को बदल देगा। यह इसे टूलबार, टैब इत्यादि में बदल देगा। माइक्रोसॉफ्ट के पास अपने फोन पर पिवोट टैब हैं। अब एफपीआर बनाने के लिए यह एक आसान त्वचा है।
/* Nav
=================================================*/
/* E
---------------------------------------------*/
.pivot .nav__item
{
margin-left: 24px;
color: #aaa;
font-size: 36px;
}
.pivot .nav__item--active, .pivot .nav__item:hover
{
color: #000;
}
इस वस्तु और त्वचा का उपयोग करने के लिए आपको अपने स्थान स्वतंत्रता की वजह से
<ul class="pivot nav">
<li class="nav__item">
<a class="nav__link"> Item 1 </a>
</li>
<li class="nav__item">
<a class="nav__link"> Item 2 </a>
</li>
</ul>
लिखते थे, आप भी यह के रूप में
<nav class="pivot nav">
<div class="nav__item">
<a class="nav__link"> Item 1 </a>
</li>
<div class="nav__item">
<a class="nav__link"> Item 2 </a>
</div>
</nav>
अंत में लिख सकते हैं, आप कंटेनर को अलग कर रहे हैं त्वचा से मैं निकोल सुलिवान मीडिया ऑब्जेक्ट के साथ छोटे से शुरू करने का सुझाव दूंगा। अधिक प्रेरणा के लिए ट्विटर बूटस्ट्रैप और Inuit.css पर एक नज़र डालें।
मुझे यह तर्क पसंद है। मुझे लगता है कि यह सवाल अच्छी तरह से जवाब देता है, लेकिन एक नया प्रस्तुत करता है: वेब डेवलपर्स अच्छी तरह से गठित स्टाइलशीट बनाने के तरीके को भूल रहे हैं? शायद बाद में एक सवाल। –
-1: यह पूरी तरह से ओओसीएसएस के बिंदु को याद करता है। सीएसएस * हार्ड * को समाहित करने के लिए है (देखें कि जब आप घोंसला प्रदर्शित करते हैं तो क्या होता है), और "सर्वोत्तम" प्रथाएं DRY सिद्धांतों को हतोत्साहित करती हैं (उदाहरण के लिए प्रस्तुति वर्ग नामों का उपयोग न करें)। निकोल सुलिवान के ओओसीएसएस सिद्धांतों को रेखांकित करता है जो आपको * मॉड्यूलर, रखरखाव तरीके से * वास्तव में * सीएसएस का उपयोग करने की अनुमति देता है। – theazureshadow
@ फिल.Wheeler "सवाल अच्छी तरह से जवाब देता है और एक नया प्रस्तुत करता है" नहीं। वह नया तरीका है जो पहले स्थान पर ओओसीएसएस शब्द को बढ़ा देता है, सिद्धांतों और पैटर्न के एक सेट का वर्णन करने के लिए जो सीएसएस को सूखे, लगातार तरीके से उपयोग करने की अनुमति देता है। सीएसएस समुदाय में ओओसीएसएस शब्द का उपयोग कैसे किया जाता है, इस बारे में कोई जागरूकता नहीं है, जब उस 'नए प्रश्न' का उत्तर दिया गया है, तो पहले प्रश्न का अच्छा जवाब नहीं मिलता है। – Barney