要素に不透明度を与えると、常に要素全体とそのすべての子要素にも影響します。その子の 1 つだけに opacity プロパティを与えたい場合は、その要素で直接宣言する必要があります。必要な効果を得るために、いくつかのヘルパー要素を導入する必要がある場合があります。
例外は、子要素に継承されない色で宣言する不透明度です。新しいrgba()
宣言 (4 番目のパラメーターは色の不透明度) を使用すると、「透明な」div (透明な背景) を持つような効果を実現できますが、フォントは完全に不透明です。
あなたの場合、このrgba
背景色で通常の背景宣言を使用するだけで十分かもしれません(あなたの答えを解釈する - あまり明確ではありませんでした):
#right_img{
background:rgba(x,y,z,0.6) url(../images/assets/sobrf-maria-page.jpg) no-repeat bottom center;
}
とx,y,z = 0...255
_a = 0...1
rgba()
宣言は古い IE (IE8 でさえも!) ではサポートされていないことに注意してください。これらをサポートするにはフィルターが必要です。幸いなことに、次の 1 つがあります。
filter:progid:DXImageTransform.Microsoft.gradient(
startColorstr=#aaxxyyzz,
endColorstr =#aaxxyyzz);
0% = 00
ここで、最初のパラメーター (a) はとの不透明度100% = FF
です。そしてxx,yy,zz = 00...FF
。