टेक्स्ट बैकग्राउंड को पारदर्शी बनाना लेकिन खुद टेक्स्ट नहीं


86

इसलिए मुझे समस्या हो रही है। मैंने चारों ओर देखा और चारों ओर देखा लेकिन कोई भाग्य नहीं। मैं अपने शरीर की पृष्ठभूमि को पारदर्शी बनाना चाहता हूं लेकिन पाठ को पारदर्शी नहीं छोड़ना चाहता। जैसा कि अभी है, मैं दोनों को एक ही अपारदर्शिता बना रहा हूं। यहाँ मेरा कोड है:

@charset "utf-8";
body {
    font: 100%/1.4 Verdana, Arial, Helvetica, sans-serif;
    background-color: #42413C;
    margin: 0;
    padding: 0;
    color: #000;
}

/* ~~ Element/tag selectors ~~ */
ul, ol, dl { 
    padding: 0;
    margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
    margin-top: 0;
    padding-right: 15px;
    padding-left: 15px;
    opacity:1;
}
a img { 
    border: none;
}
a:link {
    color: #42413C;
    text-decoration: underline;
}
a:visited {
    color: #6E6C64;
    text-decoration: underline;
}
a:hover, a:active, a:focus {
    text-decoration: none;
}
.container {
    width: 750px;
    margin: 0 auto;
}
.content {
    padding:20px;
    width:710px;
    position:relative;
    background:#CCC;
    opacity: 0.5;
}
.fltrt {
    float: right;
    margin-left: 8px;
}
.fltlft { 
    float: left;
    margin-right: 8px;
}
.clearfloat { 
    clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}
.header {
    top:0%;
    width: 750px;
    height: 200px;
    background-image: url(images/header.png);
    background-repeat:no-repeat;
    background-position:center;
}
.navbar {
    height: 50px;
    width: 750px;
    position: relative;
    z-index: 2;
}
#bg {
    position: fixed;
    top: 25%;
    left: 15%;
    z-index: -1;
}
div {
display: block;
}

यहां मेरी वेबसाइट है (लिंक पर क्लिक न करें "tccraft.net" आपके url में यह आपको फेसबुक पेज पर ले जाएगा): http://tccraft.net/index.php धन्यवाद!


जवाबों:


171

इसके opacityलिए उपयोग न करें , पृष्ठभूमि को केवल अर्ध-पारदर्शी बनाने के बजाय आरजीबीए-मान पर सेट करें। आपके मामले में यह इस तरह होगा।

.content {
    padding:20px;
    width:710px;
    position:relative;
    background: rgb(204, 204, 204); /* Fallback for older browsers without RGBA-support */
    background: rgba(204, 204, 204, 0.5);
}

अधिक जानकारी और css में rgba-values ​​के नमूने के लिए http://css-tricks.com/rgba-browser-support/ देखें ।


किसी भी विचार कैसे एक पृष्ठभूमि छवि के साथ इसे प्राप्त करने के लिए?
जुजुकैट

पृष्ठभूमि छवियों के लिए, बस अपनी छवि के रूप में एक अल्फा चैनल के साथ एक PNG या WEBP का उपयोग करें।
कार्ल-जोहान Sjögren

18

पूरी तरह से पारदर्शी पृष्ठभूमि के उपयोग के लिए:

background: transparent;

अन्यथा एक अर्ध-पारदर्शी रंग भरने के लिए उपयोग करें:

background: rgba(255,255,255,0.5); // or hsla(0, 0%, 100%, 0.5)

जहां मान हैं:

background: rgba(red,green,blue,opacity); // or hsla(hue, saturation, lightness, opacity)

आप ग्रेडिएंट बैकग्राउंड के लिए भी आरजीबीए मान का उपयोग कर सकते हैं।

एक छवि पृष्ठभूमि पर पारदर्शिता प्राप्त करने के लिए आप पहले से पसंद की छवि संपादक में छवि की अस्पष्टता को कम करें।


2

opacityपाठ और पृष्ठभूमि दोनों को पारदर्शी बना देगा। rgba()उदाहरण के लिए मान का उपयोग करके, इसके बजाय अर्ध-पारदर्शी पृष्ठभूमि-रंग का उपयोग करें । IE8 + पर काम करता है


0

यदि आप आधुनिक ब्राउज़रों के लिए RGBA का उपयोग करते हैं, तो आपको पुराने IEs को RGB के साथ दिए गए रंग के केवल गैर-पारदर्शी संस्करण का उपयोग करने की आवश्यकता नहीं है।

यदि आप CSS-only समाधानों से नहीं चिपके हैं, तो CSS3PIE को आज़माएँ। इस सिंटैक्स के साथ आप पुराने IE में ठीक वही परिणाम देख सकते हैं जो आप आधुनिक ब्राउज़रों में देखते हैं:

div {
    -pie-background: rgba(223,231,233,0.8);
    behavior: url(../PIE.htc);
}

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.