我有一個<div>
其中包含一堆<p>
s,並希望在文本後面有一個不透明的背景圖像,縮放以填充整個<div>
。即無論我添加或刪除多少文字,圖片都會增大或縮小以覆蓋整個背景<div>
。如何在div上有不透明的背景圖片?
只有圖像應該有不透明度。 div內的文字應該是純黑的。
請問我該怎麼做? (我是否擔心瀏覽器不支持CSS3?)
我有一個<div>
其中包含一堆<p>
s,並希望在文本後面有一個不透明的背景圖像,縮放以填充整個<div>
。即無論我添加或刪除多少文字,圖片都會增大或縮小以覆蓋整個背景<div>
。如何在div上有不透明的背景圖片?
只有圖像應該有不透明度。 div內的文字應該是純黑的。
請問我該怎麼做? (我是否擔心瀏覽器不支持CSS3?)
[Answer] from o.p.
我退後一步,以另一種方式看問題,發現一個跨瀏覽器的答案,不需要CSS3。
我開火了The Gimp,並在圖像本身添加了opactiy!正是我想要做的,沒有花哨的CSS3必要;-)
非常感謝您的幫助,@ JSW189。我希望你不介意我在你的回答中張貼,但這是我選擇的解決方案。
你想使用background-image
屬性添加圖像,然後background-size:100%
有背景圖像填充整個股利。
div {
background-image:url('image_url_goes_here.jpg');
background-size: 100%;
}
此外,如果您想切換不透明度,可以使用opacity
屬性。它默認設置爲opacity:1
(不透明),但您可以通過切換1
和0
之間的不透明度來更改該設置。因此,例如,如果您想要50%的不透明度,則可以使用opacity:.5
。
請注意,background-size
是一個CSS3屬性。您可以看到browser compatibility chart here。但是,這個問題可以通過像modernizr這樣的庫來解決。
+1感謝您的幫助。但是,當我看着FireFox 19中的JFiddle不透明示例時,我認爲文本與圖像一樣不透明(並且在更改不透明度時仍然存在)。也就是說,「不透明」似乎應用於div內的所有內容,而不僅僅是圖片(Chrome中也會出現同樣的情況) – Mawg
@Mawg。這是不透明度的主要挫折之一;所有的孩子元素也受到不透明度的影響。避免這個問題的唯一方法是將孩子移出父母。 – JSW189
上面的內容可以在jsfiddle.net/YJZRE/10/中看到。另外,我不喜歡你在div上放置高度和寬度 - 如果用戶調整瀏覽器的大小。但是,如果我們刪除這些內容,那麼只顯示圖像的頂部 - 無論我向div中添加或刪除多少文本,我都希望它縮小或增大以填充div。見http://jsfiddle.net/YJZRE/13/ – Mawg
猜你是不是覺得不透明?你是使用圖像還是背景顏色/灰度 –