यहां एक समाधान है जो निश्चित पृष्ठभूमि के साथ काम करता है, यदि आपके पास एक निश्चित पृष्ठभूमि है और आपके पास कुछ ओवरलेड तत्व हैं और आपको उनके लिए ब्लर बैकग्राउंड की आवश्यकता है, तो यह समाधान काम करता है:
छवि हमारे पास यह सरल HTML है:
<body> <!-- or any wrapper -->
<div class="content">Some Texts</div>
</body>
<body>
या रैपर तत्व के लिए एक निश्चित पृष्ठभूमि :
body {
background-image: url(http://placeimg.com/640/360/any);
background-size: cover;
background-repeat: no-repeat;
background-attachment: fixed;
}
और यहाँ उदाहरण के लिए हमारे पास एक सफेद पारदर्शी पृष्ठभूमि के साथ एक उपरिशायी तत्व है:
.content {
background-color: rgba(255, 255, 255, 0.3);
position: relative;
}
अब हमें अपने ओवरले तत्वों के लिए अपने रैपर की ठीक उसी पृष्ठभूमि वाली छवि का भी उपयोग करने की आवश्यकता है, मैं इसे :before
पीडो-क्लास के रूप में उपयोग करता हूं :
.content:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
filter: blur(5px);
background-image: url(http://placeimg.com/640/360/any);
background-size: cover;
background-repeat: no-repeat;
background-attachment: fixed;
}
चूँकि फिक्स्ड बैकग्राउंड रैपर और ओवरलेड एलिमेंट्स दोनों में एक ही तरह से काम करता है, हमारे पास ओवरले एलिमेंट के बिल्कुल एक ही स्क्रॉल पोजीशन में बैकग्राउंड होता है और हम इसे ब्लर कर सकते हैं। यहाँ फ़ायरफ़ॉक्स, क्रोम, ओपेरा और एज में परीक्षण किया गया एक वर्किंग फ़िडेल है: https://jsfiddle.net/0vL2rc4d/
नोट: फ़ायरफ़ॉक्स में एक बग होता है जो स्क्रॉल करते समय स्क्रीन को झिलमिलाहट करता है और निश्चित धुंधला बैकग्राउंड होता है। अगर कोई ठीक है, मुझे बताएं
CSS filter
फ़ायरफ़ॉक्स पर समर्थित नहीं है, आपको इसका उपयोग नहीं करना चाहिए।