opacity
тело бирка изменит весь стиль страницы.
Возможно, вы захотите изменить только background image
или color
.
1. Цвет
Вы должны формат rgb
для цвета 0,0,0
, и просто добавить alpha
, чтобы сделать его rgba
.
document.body.style.backgroundColor = "rgba(0,0,0,.1);"
2. Изображение
Вы должны pseudo element
изменить непрозрачность, не затрагивая тела тег.
body {
position: relative;
}
body:after {
content: "";
background: url(image.jpg);
opacity: 0.1;
top: 0;
left: 0;
bottom: 0;
right: 0;
position: absolute;
z-index: -1;
}
Вот fiddle
UPDATE
Если вам просто нужно наложение когда ваше изображение будет увеличено, , чем вы должны использовать оверлей элемент, как каждый лайтбоксе плагин.
Стиль наложения
CSS
body {
position: relative;
}
#overlay {
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
background: rgba(0,0,0,.7); //choose opacity
z-index: -1; // set z-index smaller than image and text
}
JS
if() {
//Create element and append it to body.
var page = document.body;
var overlay = document.createElement('div');
overlay.id = "overlay";
page.appendChild(overlay);
} else {
//Remove element
var overlay = document.getElementById("overlay");
overlay.parentNode.removeChild(overlay);
}
Не удается воспроизвести: http://jsfiddle.net/ru3pdqc7/ – Quentin
Вы должны предоставить нам больше информации о вашем исходный код –
какая информация? –