मेरे पास एक साइडबार के रूप में एक लेआउट में position: fixed
div है। मुझे इसकी सामग्री का हिस्सा रखने के लिए कहा गया है (आंतरिक रूप से), और बाकी को स्क्रॉल करने के लिए, यदि यह div के नीचे बहती है।निश्चित स्थिति कंटेनर में सामग्री का स्क्रॉल भाग
मैंने this answer पर एक नज़र डाली है, हालांकि वहां प्रस्तुत समाधान position: fixed
या position: absolute
कंटेनर के साथ काम नहीं करता है, जो दर्द है।
मैंने अपनी समस्या का एक JSFiddle प्रदर्शन किया है here। पेज के निचले भाग में बहने की बजाए टेक्स्ट की बड़ी मात्रा आदर्श रूप से स्क्रॉल होनी चाहिए। शीर्षलेख की ऊंचाई सामग्री के साथ भिन्न हो सकती है, और एनिमेटेड हो सकती है।
JSFiddle उदाहरण कोड:
सीएसएस:
div.sidebar {
padding: 10px;
border: 1px solid #ccc;
background: #fff;
position: fixed;
top: 10px;
left: 10px;
bottom: 10px;
width: 280px;
}
div#fixed {
background: #76a7dc;
padding-bottom: 10px;
color: #fff;
}
div#scrollable {
overlow-y: scroll;
}
HTML:
<div class="sidebar">
<div id="fixed">
Fixed content here, can be of varying height using jQuery $.animate()
</div>
<div id="scrollable">
Potentially long content
</div>
</div>
एक निश्चित हेडर के बिना, मैं बस जोड़ सकते हैं div.sidebar
को overflow-y: scroll
और मैं खुशी से यह सब की सामग्री स्क्रॉल कर सकते हैं अगर यह कंटेनर के नीचे बहती है। हालांकि, मैं साइडबार के शीर्ष पर एक निश्चित, परिवर्तनीय ऊंचाई शीर्षलेख रखने के साथ मुद्दों में भाग रहा हूं, और उस स्क्रॉल के नीचे कोई सामग्री होने पर कंटेनर में फिट होने में बहुत लंबा समय लगता है।
div.sidebar
चाहिए ठहरने position: fixed
, और मैं बहुत ज्यादा किसी भी हैक्स के बिना ऐसा करने के लिए, साथ ही संभव के रूप में पार ब्राउज़र के रूप में इसे बनाने के लिए चाहते हैं। मैंने विभिन्न चीजों का प्रयास किया है, लेकिन उनमें से कोई भी काम नहीं करता है, और मुझे यकीन है कि यहां से क्या प्रयास करना है।
मैं position: fixed
कंटेनर स्क्रॉल के अंदर केवल एक दिशा में कैसे बना सकता हूं जब यह सामग्री अलग-अलग, अनिश्चित ऊंचाई के एक निश्चित शीर्षलेख के साथ युक्त div को बहती है? मैं जेएस से दूर रहना चाहता हूं, लेकिन अगर मुझे इसका इस्तेमाल करना है तो मैं करूँगा।
मुझे यकीन है कि एक शुद्ध सीएसएस समाधान इस के लिए मौजूद है, तो नहीं कर रहा हूँ। असल में आप div # को ठीक करने की कोशिश कर रहे हैं, हालांकि, जब आप इसे दस्तावेज़ के सामान्य प्रवाह से बाहर ले जाते हैं तो ऊंचाई पृष्ठ के नीचे अन्य तत्वों को धक्का नहीं देगी। –
गैर-स्क्रॉलिंग div को ध्यान में रखते हुए साइडबार की सामग्री के शीर्ष पर है, इसे 'स्थिति: निश्चित' नहीं होना चाहिए - यह केवल सामान्य प्रवाह में बैठ सकता है। मैं जानना चाहता हूं कि 'ओवरफ्लो: स्क्रॉल' तत्व के शीर्ष को गैर-स्क्रॉलिंग div की ऊंचाई से नीचे धक्का देने का कोई तरीका है या नहीं। यह वास्तव में 'स्थिति नहीं है: निश्चित'। मेरा मतलब "फिक्स्ड" जैसा था "ओवरफ्लो के साथ स्क्रॉल नहीं करता"। – Bojangles
ऐसा प्रतीत होता है कि आपने अपनी पहेली पर कुछ प्रगति की है, यदि आप div # साइडबार पर नीचे की संपत्ति को हटाते हैं तो div सामग्री को फिट करने के लिए विस्तारित होगा –