CSS Opacity
In this page:
selector {
opacity: number-between-0-and-1;
}
Opacity Scale
opacity property किसी element का transparency level set करती है। यह 0.0 (पूरी तरह transparent और invisible) से 1.0 (पूरी तरह opaque और solid) के scale पर decimal values accept करती है। किसी element की opacity बदलना उस element और उसके सभी nested children को असर करता है।
- अपने links या buttons पर smooth hover transitions और animations बनाने के लिए opacity changes इस्तेमाल करें।
- Accepted values:
- number — 0 (पूरी तरह transparent) से 1 (पूरी तरह opaque)
- percentage — 0% से 100% भी accepted है
- 0.5 — आधा transparent
- Element और उसके सभी children पर लागू होता है
- inherit | initial | unset | revert — हर property द्वारा accepted CSS-wide keywords
उदाहरण: The Opacity Scale
<style>
.faint {
background: seagreen;
color: white;
padding: 10px;
opacity: 0.3;
}
.solid {
background: seagreen;
color: white;
padding: 10px;
opacity: 1;
}
</style>
<div class="faint">30% opacity</div>
<div class="solid">Fully opaque</div>
Interactive Hover Transitions
आप अपने buttons, links, या cards पर elegant, responsive hover transitions बनाने के लिए opacity इस्तेमाल कर सकते हैं। किसी element को उसकी normal state में थोड़ा dim करके और hover पर पूरी opacity restore करके, आप users को बताते हैं कि element interactive है।
उदाहरण: Interactive Hover Transitions
<style>
.btn {
opacity: 0.7;
transition: opacity 0.2s;
}
.btn:hover {
opacity: 1;
}
</style>
<button class="btn">Hover me</button>
Opacity बनाम RGBA Transparency
अगर आप एक semi-transparent container background (जैसे एक overlay) बनाना चाहते हैं लेकिन चाहते हैं कि इसके nested child elements (जैसे titles या text) solid और opaque रहें, तो opacity property इस्तेमाल न करें। इसके बजाय, अपनी background-color property के लिए एक RGBA color value इस्तेमाल करें।
उदाहरण: Opacity vs. RGBA Transparency
<style>
.opacity-box {
background: seagreen;
color: white;
padding: 10px;
opacity: 0.5;
}
.rgba-box {
background: rgba(0, 0, 0, 0.5);
color: white;
padding: 10px;
}
</style>
<div class="opacity-box">Text is also faded</div>
<div class="rgba-box">Text stays fully readable</div>
Opacity बनाम visibility: hidden
अगर आप अपने page पर किसी element को पूरी तरह hide करना चाहते हैं, तो आप उसकी opacity को 0 set कर सकते हैं या visibility: hidden property इस्तेमाल कर सकते हैं। दोनों element को invisible बनाते हैं, लेकिन display: none set करने के उलट, element फिर भी document flow में अपनी original layout space occupy करता है।
- किसी ऐसे element को hide करने के लिए opacity: 0 इस्तेमाल करें जिसे आप बाद में JavaScript से smoothly view में fade करना चाहते हैं।
- Accepted values:
- opacity — 0 से 1; element को fade करता है, फिर भी clickable
- visibility: hidden — invisible, जगह लेता है, clickable नहीं
- display: none — layout से पूरी तरह हटाया गया
उदाहरण: Opacity vs. visibility: hidden
<style>
.opacity-hidden {
opacity: 0;
}
</style>
<p>Before</p>
<p class="opacity-hidden">Invisible, but still takes up space and is clickable</p>
<p>After</p>
Layered Backdrops में Opacity
आप सुंदर layered backdrops और complex image textures बनाने के लिए opacity rules इस्तेमाल कर सकते हैं, background assets को foreground layers के साथ साफ़ तरीके से blend करते हुए।
उदाहरण: Opacity in Layered Backdrops
<style>
.backdrop {
opacity: 0.6;
}
.card {
position: relative;
}
</style>
<div class="card">
<img class="backdrop" src="https://placehold.co/300x150" alt="Faded backdrop">
<p>Foreground text pops</p>
</div>
- background colors को transparent बनाने के लिए opacity property इस्तेमाल करना, जो गलती से सारे nested text को unreadably transparent बना देता है।
- invisible (opacity: 0) लेकिन फिर भी screen पर active links या buttons को click करने की कोशिश करना।
- card opacity को इतना कम करना कि यह standard web accessibility contrast thresholds violate कर दे।
- opacity property किसी element का transparency level 0.0 से 1.0 के scale पर set करती है।
- Opacity element और उसके सभी nested children को असर करती है, जो इसे text container backgrounds के लिए खराब बनाती है।
- solid, readable text के साथ transparent container backgrounds बनाने के लिए, इसके बजाय RGBA या HSLA color values इस्तेमाल करें।
opacity property और standard RGBA color systems हर modern web browser द्वारा natively supported हैं।
Chapter Quiz — Complete all 22 topics to unlock
0/22 topics done
Complete these topics first:
- CSS Combinators
- CSS Pseudo-classes
- CSS Pseudo-elements
- CSS Opacity
- CSS Navigation Bar
- CSS Vertical Navbar
- CSS Horizontal Navbar
- CSS Dropdowns
- CSS Advanced Dropdowns
- CSS Image Gallery
- CSS Image Sprites
- CSS Attribute Selectors
- CSS Forms
- CSS Counters
- CSS Specificity
- CSS Specificity Hierarchy
- CSS Variables
- CSS !important
- CSS Box Sizing
- CSS Media Queries
- CSS Pointer Events
- CSS Outline