ฉันสามารถตั้งค่าภาพพื้นหลังและความทึบในคุณสมบัติเดียวกันได้หรือไม่?


264

ผมสามารถมองเห็นในการอ้างอิง CSS วิธีการตั้งค่าความโปร่งใสของภาพและวิธีการตั้งค่าภาพพื้นหลัง แต่ฉันจะรวมสองสิ่งนี้เพื่อตั้งค่าภาพพื้นหลังแบบโปร่งใสได้อย่างไร

ฉันมีภาพที่ฉันต้องการใช้เป็นพื้นหลัง แต่มันสว่างเกินไป - ฉันต้องการลดความทึบลงเหลือประมาณ 0.2 ฉันจะทำสิ่งนี้ได้อย่างไร

#main {
    background-image: url(/wp-content/uploads/2010/11/tandem.jpg); 
}

คำตอบ:


133

สองวิธี:

  1. แปลงเป็น PNG และทำให้ภาพต้นฉบับมีความทึบ 0.2
  2. (ดีกว่าวิธีการ) มี<div>ที่อยู่position: absolute;ก่อน#mainและสูงเช่นเดียวแล้วใช้ภาพพื้นหลังและ#mainopacity: 0.2; filter: alpha(opacity=20);

ใช่ปัญหาใหญ่กับ PNG คือขนาด มันน่าจะมีขนาดใหญ่มาก ตอนนี้เราสามารถระบุopacity: ...ในเบราว์เซอร์ทั้งหมดได้ดีกว่า!
Alexis Wilke

1
คุณจะประหลาดใจในสิ่งที่คุณสามารถบีบออกจาก PNG ตัวอย่างเช่นที่ความทึบ 0.2 คุณอาจไม่ได้เลือกรายละเอียดมากมายดังนั้นคุณสามารถแปลงเป็นดัชนี PNG ได้ จริง ๆ แล้วฉันใช้สิ่งนี้ในเว็บไซต์ของฉันเองและมันทำให้รูปภาพพื้นหลังของ 1920x1080 มีขนาดไม่เกิน 250kb
Niet the Dark Absolute

คุณควรเพิ่มดัชนี z: -1 ในตำแหน่งนั้น: สัมบูรณ์เพื่ออนุญาตให้ใช้พื้นเหนือการซ้อนทับ คำตอบที่ดี.
Raz

1
คุณยังสามารถใช้ WebP - รองรับความโปร่งใสและขนาดไฟล์เล็กกว่า PNG มาก เบราว์เซอร์หลักทั้งหมดยกเว้น Safari ตอนนี้รองรับ WebP คุณสามารถให้บริการ WebP เพื่อสนับสนุนเบราว์เซอร์และ PNG ไปยัง Safari
Dan Roberts

364
#main {
    position: relative;
}
#main:after {
    content : "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(/wp-content/uploads/2010/11/tandem.jpg); 
    width: 100%;
    height: 100%;
    opacity : 0.2;
    z-index: -1;
}

4
เนื้อหาที่สร้างจาก IE8 ขึ้นไป caniuse.com/#feat=css-gencontentใช้คุณสมบัติตัวกรองสำหรับ IE8 caniuse.com/#search=opacity
Dan Eastwell

3
ฉันเพิ่ม "z-index: -1" ลงใน CSS วิธีการที่ภาพพื้นหลังได้รับผลกระทบจากความทึบไม่ใช่เนื้อหาที่เหลือของ #main
patrick

17
ฉันใช้:beforeแทน:afterและจากนั้นฉันไม่ต้องยุ่งเกี่ยวกับz-indexเพราะ:beforeสิ้นสุดด้านล่างเนื้อหาหลักโดยอัตโนมัติ (ทดสอบแล้วใน Chrome และ FF.)
KajMagnus

1
@KajMagnus ถ้าคุณทำอย่างนั้นทุกอย่างหลังจากนั้นจะไม่แสดง ลองใช้ความทึบของ 1.0 แล้วคุณจะเห็นว่าฉันหมายถึงอะไร
เจสสิก้า

1
หากคุณได้รับภาพพื้นหลังซ้ำคุณอาจต้องการ / จำเป็นต้องเพิ่มbackground-repeat: no-repeat; background-attachment: fixed; background-position: center;ภายใน#main: หลังจาก { ... }
บ้านจีโอเอ็นจิเนียริ่ง

106

วิธีแก้ปัญหาด้วย 1 div และไม่มีภาพโปร่งใส:

คุณสามารถใช้คุณสมบัติ multibackground CSS3 และวางพื้นหลังสอง: หนึ่งกับภาพอีกด้วยแผงโปร่งใสเหนือ (เพราะฉันคิดว่าไม่มีวิธีการตั้งค่าความทึบของภาพพื้นหลังโดยตรง):

background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.7) 100%), url(bg.png) repeat 0 0, url(https://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png) repeat 0 0;

background: -moz-linear-gradient(top, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0.7) 100%), url(https://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png) repeat 0 0;

background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0.7)), color-stop(100%,rgba(255,255,255,0.7))), url(https://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png) repeat 0 0;

background: -webkit-linear-gradient(top, rgba(255,255,255,0.7) 0%,rgba(255,255,255,0.7) 100%), url(https://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png) repeat 0 0;

background: -o-linear-gradient(top, rgba(255,255,255,0.7) 0%,rgba(255,255,255,0.7) 100%), url(https://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png) repeat 0 0;

background: -ms-linear-gradient(top, rgba(255,255,255,0.7) 0%,rgba(255,255,255,0.7) 100%), url(https://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png) repeat 0 0;

background: linear-gradient(to bottom, rgba(255,255,255,0.7) 0%,rgba(255,255,255,0.7) 100%), url(https://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png) repeat 0 0;

คุณไม่สามารถใช้rgba(255,255,255,0.5)เพราะเพียงอย่างเดียวมันเป็นที่ยอมรับที่ด้านหลังเท่านั้นดังนั้นคุณจึงใช้การไล่ระดับสีที่สร้างขึ้นสำหรับแต่ละเบราว์เซอร์สำหรับตัวอย่างนี้ แต่แนวคิดดังต่อไปนี้:

background: tranparentColor, url("myImage"); 

http://jsfiddle.net/pBVsD/1/


สิ่งนี้จะใช้ได้ก็ต่อเมื่อพื้นหลังเป็นสีทึบหากคุณมี PNG24 ซึ่งเป็นพื้นหลังและคุณต้องการให้มีความทึบ (เช่นโฮเวอร์) ตัวอย่างเช่นนี้จะไม่ทำงานและคุณจะต้องใช้วิธีการหลอกองค์ประกอบ ซึ่งจริง ๆ แล้วดีกว่าเนื่องจากสามารถใช้ได้ใน IE 8 ขึ้นไป
vsync

66

ทางออกที่ง่าย

หากคุณต้องการตั้งค่าการไล่ระดับสีเป็นภาพพื้นหลังเท่านั้น:

background-image: url(IMAGE_URL); /* fallback for older browsers */

background-image: linear-gradient(to bottom, rgba(0,0,0,0.6) 0%,rgba(0,0,0,0.6) 100%), url(IMAGE_URL);

รูปภาพเคลื่อนไปด้านบนเล็กน้อย มันมีการแก้ไขหรือไม่?
HFR1994

6
คุณยังสามารถใช้ RGBA 255,255,255 background-image: linear-gradient (จากด้านล่าง, rgba (255,255,255,0.6) 0%, rgba (255,255,255,0.6) 100%), url (IMAGE_URL);
โรมัน

@Roman คุณสามารถตั้งค่าองค์ประกอบสี rgba เป็นค่าที่ใช้เป็นสีพื้นหลังในองค์ประกอบหรือแม่แบบฝัง (ทดสอบบน Chrome 58.0.3029.81, Edge 38.14393.0.0)
collapsar

46

ฉันเห็นสิ่งนี้และใน CSS3 คุณสามารถวางรหัสในลักษณะนี้ได้ ให้บอกว่าฉันต้องการให้ครอบคลุมพื้นหลังทั้งหมดฉันจะทำอะไรเช่นนี้ จากนั้นด้วยhsla(0,0%,100%,0.70)หรือ rgba คุณจะใช้พื้นหลังสีขาวโดยมีความอิ่มตัวของเปอร์เซ็นต์

.body{
    background-attachment: fixed;
    background-image: url(../images/Store1.jpeg);
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: hsla(0,0%,100%,0.70);
    background-blend-mode: overlay;
    background-repeat: no-repeat;
}

2
การเพิ่มสีพื้นหลังและโหมดผสมสีพื้นหลังนั้นเป็นเคล็ดลับสำหรับฉัน ตอนนี้ฉันมี div ที่มีความทึบซึ่งไม่ส่งผลกระทบต่อลูก ๆ ของมัน!
Diego Victor de Jesus

1
นี่มันเยี่ยมมาก! ฉันสร้างฟังก์ชั่น jquery เพื่อเปลี่ยนความทึบในการเลื่อนสร้างสีบนภาพพื้นหลังขณะที่คุณเลื่อนลง $ (ฟังก์ชัน () {$ (หน้าต่าง) .scroll (ฟังก์ชัน () {var scroll = $ (หน้าต่าง) .scrollTop (); var current = 0; var now = 0; var now = (current-scroll) / 7; $ ('. slide) ') .css (' ตำแหน่งพื้นหลัง ', '50%' + ตอนนี้ + 'px'); var color = Math.round (เลื่อน / 7) / 100; $ ('. เลื่อน'). css ('background- สี ',' rgba (128, 45, 87, '+ color +') ');});});
drooh

10

คุณสามารถใช้ CSS psuedo selector :: after เพื่อให้บรรลุสิ่งนี้ นี่คือตัวอย่างการทำงาน

ป้อนคำอธิบายรูปภาพที่นี่

.bg-container{
  width: 100%;
  height: 300px;
  border: 1px solid #000;
  position: relative;
}
.bg-container .content{
  position: absolute;
  z-index:999;
  text-align: center;
  width: 100%;
}
.bg-container::after{
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index:-99;
  background-image: url(https://i.stack.imgur.com/Hp53k.jpg);
  background-size: cover;
  opacity: 0.4;
}
<div class="bg-container">
   <div class="content">
     <h1>Background Opacity 0.4</h1>
   </div>
</div>


4

ฉันมีปัญหาที่คล้ายกัน ฉันมีภาพและต้องการลดความโปร่งใสและมีพื้นหลังสีดำด้านหลังภาพ แทนที่จะลดความทึบหรือสร้างพื้นหลังสีดำหรือ div รองใด ๆ ฉันตั้งค่าการไล่ระดับสีเชิงเส้นให้กับภาพทั้งหมดในหนึ่งบรรทัด:

background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.8) 100%), url("/img/picture.png");


3

ฉันใช้คำตอบของ @Dan Eastwell และใช้งานได้ดีมาก รหัสคล้ายกับรหัสของเขา แต่มีบางส่วนเพิ่มเติม

.granddata {
    position: relative;
    margin-left :0.5%;
    margin-right :0.5%;
}
.granddata:after {
    content : "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url("/Images/blabla.jpg");
    width: 100%;
    height: 100%;
    opacity: 0.2;
    z-index: -1;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment:fixed;
}

2

วิธีที่ยอดเยี่ยมสำหรับการทำภาพง่าย ๆ คือการใช้ CSS เพียงอย่างเดียวเพื่อกำหนดพื้นหลังขององค์ประกอบ HTML อย่างนั้น

HTML {
    background: url('http://www.earthtimes.org/newsimage/eat-lead-by-example-obesity-expert-tells-parents_139.jpg');
    width: 100%;
    height: 100%;
}

หากคุณต้องการได้รับแฟนซีและตั้งค่าความทึบของมันแล้วใน IE9 + * คุณสามารถตั้งค่าสีพื้นหลังโปร่งใสของร่างกาย วิธีนี้ใช้งานได้โดยการวางซ้อนกึ่งโปร่งใสสีขาวเพื่อทำให้ภาพขาวขึ้นและดูสว่างขึ้น ตัวอย่างเช่นสีขาวที่มีความทึบแสง 75% ( rgba(255,255,255,.75)) จะให้ผลดังต่อไปนี้

HTML {
  background: url('http://www.earthtimes.org/newsimage/eat-lead-by-example-obesity-expert-tells-parents_139.jpg');
  width: 100%;
  height: 100%;
  position: relative;
}

body {
  width: 100%;
  min-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  background: rgba(255, 255, 255, .75);
}
<p>Lorem ipsum dolor sit amet, et id, maecenas a convallis, elit facilisi congue augue id ac. Suscipit luctus egestas rutrum, amet tincidunt porttitor ante convallis magna, vivamus amet at turpis, ante lacinia blandit vel metus mauris rutrum. Ipsum nam adipiscing.
  Est sapien quis sem vestibulum, quis cubilia turpis, suspendisse mattis vehicula enim risus pede, placerat suspendisse dui. Convallis nostrud pede, mollit lobortis, ornare ipsum tempor faucibus tortor, vel pede, porttitor nulla nonummy vestibulum purus.
  Eros placerat tenetur augue ipsum aliquam, pellentesque congue condimentum sed vitae lectus.</p>
<p>Aliquam venenatis curabitur pellentesque sociosqu quam. Tincidunt id erat vestibulum in, est fermentum ipsum et augue, nascetur etiam. Lorem elit, sed donec, leo vivamus ac id enim faucibus vel. Nullam sit feugiat sed massa consectetuer auctor, nulla
  et erat lacinia nec, eget ut ante nullam est non in, elit porttitor in in donec eget porttitor. Interdum ultricies sem morbi facilisis nibh erat. Id suspendisse, sed tincidunt fringilla sit, sapien odio vel, at culpa augue sed taciti neque inceptos,
  massa class non. Vel tristique condimentum at pellentesque, commodo nulla sagittis rhoncus lorem. Viverra maecenas tellus pretium urna mauris proin, vel libero morbi, ante volutpat vestibulum augue. Itaque leo mauris turpis, vivamus nisl congue nisl
  nulla in turpis, eget vitae accumsan dolor ipsum leo venenatis, feugiat vehicula in risus, donec eu pede vivamus itaque nam. Justo amet vitae pellentesque sed, posuere fusce sapien, sed nam placerat libero sed etiam curabitur, suspendisse justo, amet
  porttitor.</p>
<p>Condimentum eget. Sem elementum a et mauris sem a, velit justo consectetuer in turpis mauris, sit sed elit cum, fusce suspendisse pretium dictum, mattis dui tortor tellus. Volutpat ut ante lorem nec laoreet aliquam, lorem est magna amet, integer mauris
  purus tellus. Porta enim repellendus aliquam eros. Turpis posuere elementum suscipit wisi lobortis, nec nunc consequat dictum ut unde at, mi lorem amet nunc. Cubilia pede, integer dolor, eget platea felis elit enim rhoncus, integer proin quam in ipsum
  lorem, diam curabitur netus pretium pellentesque. Donec rutrum ultrices placerat, curabitur maecenas, feugiat pede varius accumsan quam lorem, dui et dictumst asperiores nulla, vivamus urna nam leo libero. Posuere non convallis amet justo parturient,
  imperdiet consectetuer arcu praesent cursus risus, quis pretium dolor.</p>

  • เคล็ดลับ:แจ้งให้ทราบว่า HTML คือในขณะที่ร่างกายคือposition: relative position: absoluteนี่คือการป้องกันไม่ให้สีพื้นหลังของร่างกายทำตัวเหมือนปากกาเน้นข้อความในร่างกาย

นี้ยังสามารถขยายได้ถึงบางสิ่งบางอย่างที่เทียบเคียงกับ แต่ยังคงมากแตกต่างจากตัวกรอง CSS โดยการเปลี่ยนรอบสีพื้นหลังของร่างกาย RGBA ตัวอย่างเช่นrgba(0,255,0,.75)จะสร้างโทนสีเขียวมากอย่างที่คุณเห็นในโค้ดขนาดสั้น

HTML {
    background: url('http://www.earthtimes.org/newsimage/eat-lead-by-example-obesity-expert-tells-parents_139.jpg');
    width: 100%;
    height: 100%;
    position: relative;
}
body {
    width: 100%;
    min-height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    background: rgba(0,255,0,.75);
}
<p>Aliquam venenatis curabitur pellentesque sociosqu quam. Tincidunt id erat vestibulum in, est fermentum ipsum et augue, nascetur etiam. Lorem elit, sed donec, leo vivamus ac id enim faucibus vel. Nullam sit feugiat sed massa consectetuer auctor, nulla et erat lacinia nec, eget ut ante nullam est non in, elit porttitor in in donec eget porttitor. Interdum ultricies sem morbi facilisis nibh erat. Id suspendisse, sed tincidunt fringilla sit, sapien odio vel, at culpa augue sed taciti neque inceptos, massa class non. Vel tristique condimentum at pellentesque, commodo nulla sagittis rhoncus lorem. Viverra maecenas tellus pretium urna mauris proin, vel libero morbi, ante volutpat vestibulum augue. Itaque leo mauris turpis, vivamus nisl congue nisl nulla in turpis, eget vitae accumsan dolor ipsum leo venenatis, feugiat vehicula in risus, donec eu pede vivamus itaque nam. Justo amet vitae pellentesque sed, posuere fusce sapien, sed nam placerat libero sed etiam curabitur, suspendisse justo, amet porttitor.</p>
<p>Condimentum eget. Sem elementum a et mauris sem a, velit justo consectetuer in turpis mauris, sit sed elit cum, fusce suspendisse pretium dictum, mattis dui tortor tellus. Volutpat ut ante lorem nec laoreet aliquam, lorem est magna amet, integer mauris purus tellus. Porta enim repellendus aliquam eros. Turpis posuere elementum suscipit wisi lobortis, nec nunc consequat dictum ut unde at, mi lorem amet nunc. Cubilia pede, integer dolor, eget platea felis elit enim rhoncus, integer proin quam in ipsum lorem, diam curabitur netus pretium pellentesque. Donec rutrum ultrices placerat, curabitur maecenas, feugiat pede varius accumsan quam lorem, dui et dictumst asperiores nulla, vivamus urna nam leo libero. Posuere non convallis amet justo parturient, imperdiet consectetuer arcu praesent cursus risus, quis pretium dolor.</p>
<p>Lorem ipsum dolor sit amet, et id, maecenas a convallis, elit facilisi congue augue id ac. Suscipit luctus egestas rutrum, amet tincidunt porttitor ante convallis magna, vivamus amet at turpis, ante lacinia blandit vel metus mauris rutrum. Ipsum nam adipiscing. Est sapien quis sem vestibulum, quis cubilia turpis, suspendisse mattis vehicula enim risus pede, placerat suspendisse dui. Convallis nostrud pede, mollit lobortis, ornare ipsum tempor faucibus tortor, vel pede, porttitor nulla nonummy vestibulum purus. Eros placerat tenetur augue ipsum aliquam, pellentesque congue condimentum sed vitae lectus.</p>

  • เคล็ดลับ: RGBA สอดคล้องกับR ed G reen B lue A lpha ดังนั้นตีความเบราว์เซอร์เป็นบางสิ่งบางอย่างสุดขั้วrgba(0,255,0,.75){red:0, green:255, blue:0, alpha:'75%'}


* ตารางความเข้ากันได้เต็มสามารถดูได้ที่ฉันสามารถใช้ อย่างไรก็ตามโปรดทราบว่าคุณต้องคลิกที่ "แสดงทั้งหมด" เพื่อดูว่า IE9 รองรับหรือไม่


ภาคผนวก

เนื่องจากฉันได้ตอบคำถามไปแล้ว แต่ฉันมีมากกว่าที่ฉันต้องการเพิ่มฉันจะเพิ่มส่วนท้ายของหัวข้อนี้และให้เพิ่มข้อมูลที่มีประโยชน์ ดังนั้นเพื่อคาดการณ์ถึงเนื้อหาข้างต้นคุณสามารถใช้ SVG เป็นภาพพื้นหลังเพื่อทำสิ่งที่น่ากลัว ตัวอย่างเช่นคุณสามารถสร้างพื้นหลังหน้าจอการโหลดที่มีไอคอนเว็บไซต์เจ๋ง ๆ อย่างที่คุณเห็นในตัวอย่างของ SVG ที่เข้ารหัส base64 ด้านล่าง

HTML {
    background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNDAwIiBoZWlnaHQ9IjQwMCIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMSAxIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiIgYXJpYS1oaWRkZW49InRydWUiPjxnIGlkPSJrIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImMiIGdyYWRpZW50VHJhbnNmb3JtPSJyb3RhdGUoLTEyMCkiIHRyYW5zZm9ybS1vcmlnaW49Ii41LjUiPjxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9InJnYmEoMCwwLDAsLjYpIi8+PHN0b3Agb2Zmc2V0PSI0NyUiIHN0b3AtY29sb3I9InJnYmEoMCwwLDAsLjYpIi8+PHN0b3Agb2Zmc2V0PSI1MyUiIHN0b3AtY29sb3I9InJnYmEoMCwwLDAsLjMpIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSJyZ2JhKDAsMCwwLC45KSIvPjxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9ImdyYWRpZW50VHJhbnNmb3JtIiBhdHRyaWJ1dGVUeXBlPSJYTUwiIHR5cGU9InJvdGF0ZSIgZHVyPSI3MDAwbXMiIGZyb209IjAiIHRvPSIzNjAiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIi8+PC9saW5lYXJHcmFkaWVudD48cmFkaWFsR3JhZGllbnQgaWQ9ImQiIHI9Ii41IiBjeT0iLjUiIGN4PSIuNSI+PHN0b3Agb2Zmc2V0PSIzNSUiIHN0b3AtY29sb3I9ImJsYWNrIi8+PHN0b3Agb2Zmc2V0PSI1MCUiIHN0b3AtY29sb3I9ImdyZXkiLz48c3RvcCBvZmZzZXQ9IjY1JSIgc3RvcC1jb2xvcj0iYmxhY2siLz48L3JhZGlhbEdyYWRpZW50PjxyYWRpYWxHcmFkaWVudCBpZD0iZSIgcj0iLjUiIGN5PSIuNSIgY3g9Ii41Ij48c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSJ3aGl0ZSIvPjxzdG9wIG9mZnNldD0iMjUlIiBzdG9wLWNvbG9yPSJ5ZWxsb3ciLz48c3RvcCBvZmZzZXQ9Ijc1JSIgc3RvcC1jb2xvcj0ieWVsbG93Ii8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSJ3aGl0ZSIvPjwvcmFkaWFsR3JhZGllbnQ+PGNsaXBQYXRoIGlkPSJmIj48cGF0aCBzdHJva2U9ImdyZXkiIHN0cm9rZS13aWR0aD0iLjAxIiBpZD0iYiIgZD0iTS43NS43MUEuMzEuMzEgMCAxIDEgLjc1LjMxTC42OS4zOEEuMjIuMjIgMCAxIDAgLjY4LjY2TC41Ni41N0wuNi41MUwuODIuNjh6TS42LjYzQS4xNC4xNCAwIDEgMSAuNjIuNDJMLjY2LjM5QS4xOS4xOSAwIDEgMCAuNjQuNjZ6TS41NS41OEEuMDcuMDcgMCAxIDEgLjU2LjQ2TC42LjQzQS4xMi4xMiAwIDEgMCAuNTkuNjF6Ii8+PC9jbGlwUGF0aD48Y2xpcFBhdGggaWQ9ImciPjxwYXRoIHN0cm9rZT0iZ3JleSIgZmlsbD0icmVkIiBzdHJva2Utd2lkdGg9Ii4wMSIgZD0iTS42LjYzQS4xNC4xNCAwIDEgMSAuNjIuNDJMLjY2LjM5QS4xOS4xOSAwIDEgMCAuNjQuNjZ6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PGcgY2xpcC1wYXRoPSJ1cmwoI2YpIiBmaWxsPSJ1cmwoI2MpIj48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIi8+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0icmVkIiBjbGlwLXBhdGg9InVybCgjZykiLz48L2c+PGcgdHJhbnNmb3JtPSJzY2FsZSgxLjEpIiB0cmFuc2Zvcm0tb3JpZ2luPSIuNS41Ij48dGV4dD48dGV4dFBhdGggaHJlZj0iI2IiIGZvbnQtc2l6ZT0iLjY1JSIgZm9udC1mYW1pbHk9Im1vbm9zcGFjZSIgbGV0dGVyLXNwYWNpbmc9Ii0uNSUiIHN0eWxlPSJ3aGl0ZS1zcGFjZTpwcmUiPiBZT1VSIDx0c3BhbiBmaWxsPSJyZWQiPkVYQU1QTEUgV0VCU0lURTwvdHNwYW4+IExPR088L3RleHRQYXRoPjwvdGV4dD48L2c+PC9nPjwvc3ZnPg==');
    width: 100%;
    height: 100%;
    position: relative;
    background-size: cover;
}
body {
    width: 100%;
    min-height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    background: rgba(255,255,255,.5);
}
<p>Condimentum eget. Sem elementum a et mauris sem a, velit justo consectetuer in turpis mauris, sit sed elit cum, fusce suspendisse pretium dictum, mattis dui tortor tellus. Volutpat ut ante lorem nec laoreet aliquam, lorem est magna amet, integer mauris purus tellus. Porta enim repellendus aliquam eros. Turpis posuere elementum suscipit wisi lobortis, nec nunc consequat dictum ut unde at, mi lorem amet nunc. Cubilia pede, integer dolor, eget platea felis elit enim rhoncus, integer proin quam in ipsum lorem, diam curabitur netus pretium pellentesque. Donec rutrum ultrices placerat, curabitur maecenas, feugiat pede varius accumsan quam lorem, dui et dictumst asperiores nulla, vivamus urna nam leo libero. Posuere non convallis amet justo parturient, imperdiet consectetuer arcu praesent cursus risus, quis pretium dolor.</p>
<p>Lorem ipsum dolor sit amet, et id, maecenas a convallis, elit facilisi congue augue id ac. Suscipit luctus egestas rutrum, amet tincidunt porttitor ante convallis magna, vivamus amet at turpis, ante lacinia blandit vel metus mauris rutrum. Ipsum nam adipiscing. Est sapien quis sem vestibulum, quis cubilia turpis, suspendisse mattis vehicula enim risus pede, placerat suspendisse dui. Convallis nostrud pede, mollit lobortis, ornare ipsum tempor faucibus tortor, vel pede, porttitor nulla nonummy vestibulum purus. Eros placerat tenetur augue ipsum aliquam, pellentesque congue condimentum sed vitae lectus.</p>
<p>Aliquam venenatis curabitur pellentesque sociosqu quam. Tincidunt id erat vestibulum in, est fermentum ipsum et augue, nascetur etiam. Lorem elit, sed donec, leo vivamus ac id enim faucibus vel. Nullam sit feugiat sed massa consectetuer auctor, nulla et erat lacinia nec, eget ut ante nullam est non in, elit porttitor in in donec eget porttitor. Interdum ultricies sem morbi facilisis nibh erat. Id suspendisse, sed tincidunt fringilla sit, sapien odio vel, at culpa augue sed taciti neque inceptos, massa class non. Vel tristique condimentum at pellentesque, commodo nulla sagittis rhoncus lorem. Viverra maecenas tellus pretium urna mauris proin, vel libero morbi, ante volutpat vestibulum augue. Itaque leo mauris turpis, vivamus nisl congue nisl nulla in turpis, eget vitae accumsan dolor ipsum leo venenatis, feugiat vehicula in risus, donec eu pede vivamus itaque nam. Justo amet vitae pellentesque sed, posuere fusce sapien, sed nam placerat libero sed etiam curabitur, suspendisse justo, amet porttitor.</p>

  • เคล็ดลับ:background-size: cover CSS ทำให้โลโก้ SVG ในพื้นหลังที่จะปรับขนาดให้ขนาดขององค์ประกอบ HTML ได้

1

ใน CSS ของคุณเพิ่ม ...

 filter: opacity(50%);

ใน JavaScript ใช้ ...

 element.style.filter='opacity(50%)';

หมายเหตุ: เพิ่มคำนำหน้าผู้ขายตามที่จำเป็น แต่ Chromium ควรจะดีโดย


0

วิธีเดียวที่จะทำให้ความโปร่งใสของพื้นหลัง CSS ทำได้โดยผ่านRGBaแต่เนื่องจากคุณต้องการใช้ภาพฉันขอแนะนำให้ใช้ Photoshop หรือ Gimp เพื่อทำให้ภาพโปร่งใสและใช้เป็นพื้นหลัง


สิ่งนี้ไม่ถูกต้องมีการประกาศ CSS3: opactiy: 1;ไม่ใช่แค่ RGBa
Kyle

4
สิ่งที่เขาพูดคือการตั้งค่าbackground-imageสไตล์บนภาชนะแล้วตั้งค่าopacityสไตล์ในองค์ประกอบเดียวกัน ซึ่งจะทำให้ข้อความและเนื้อหาอื่น ๆ ขององค์ประกอบนั้นโปร่งใส ลองใช้ถ้าคุณไม่เชื่อฉัน: w3schools.com/Css/tryit.asp?filename=trycss_transparency

0

ฉันเพิ่งเพิ่ม position = absolute, top = 0, width = 100% ใน #main และตั้งค่าความทึบเป็น #background

#main{height:100%;position:absolute; top:0;width:100%}
#background{//same height as main;background-image:url(image URL);opacity:0.2}

ฉันใช้พื้นหลังกับ div ก่อนหน้าหลัก


-1

ฉันเจอโพสต์นี้เนื่องจากฉันมีปัญหาเดียวกันแล้วฉันคิดว่าทำไมยุ่งกับ css ปรับค่าและกดปุ่มรีเฟรชเมื่อคุณสามารถปรับความทึบใน Photoshop ได้อย่างง่ายดาย? คัดลอกรูปภาพวางเป็นเลเยอร์ใหม่จากนั้นเลื่อนตัวเลื่อนทึบ


2
ArtB ทำให้ถูกต้องโดยไม่มีโน้ตตัวสุดท้าย นี่เป็นทางออกที่ดีอย่างสมบูรณ์แบบสำหรับปัญหาอื่น มีหลายครั้งที่นี่ไม่ใช่ทางออกที่ถูกต้องและนี่คือหนึ่งในนั้น
จอน

-1

ฉันมีปัญหาที่คล้ายกันและฉันเพิ่งถ่ายภาพพื้นหลังด้วย photoshop และสร้าง. png ใหม่ด้วยความทึบที่ฉันต้องการ แก้ไขปัญหาโดยไม่ต้องกังวลถ้า CSS ของฉันทำงานได้กับทุกอุปกรณ์และเบราว์เซอร์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.