У меня есть следующий css:
body {
background-image: url(images/background.jpg);
background-repeat: repeat-x;
background-color: #99ccff;
}
К сожалению, любой div, созданный на этой странице, теперь автоматически имеет этот цвет. Ни одно из следующих действий не работает, если оно применяется к любому элементу div на странице (он по-прежнему принимает указанный выше цвет.
bacgkround: none;
background: transparent;
bacgkround-color: none;
background-color: transparent;
Кто-нибудь знает, как обойти это (в IE)? т. е. как сделать div прозрачным или НЕ иметь цвета фона?
РЕДАКТИРОВАТЬ: я загрузил скриншот здесь: http://www.namhost.com/bgtrans.jpg По сути, фон - это градиентное изображение, которое меняется от ТЕМНО-синего до светло-голубого, который является фоном. В firefox область с надписью bradd pitt прозрачна, и вы не видите синего контура. Однако в IE вы видите то, что видите на этом снимке экрана.
Вот скриншот того, что можно увидеть в Firefox: http://www.namhost.com/bgtransfirefox.jpg
Ответ 1 · рейтинг 2 · Mauro
не уверен, что здесь происходит не так (если что-то вообще идет не так), прозрачный и ни один из них не означает, что div не должен иметь свой собственный цвет, и поэтому вы увидите через div фон родительского контейнера.... если ни один из у родителей есть цвет, тогда вы увидите фон тела/страницы
Ответ 2 · рейтинг 1 · rahul
Ваше предположение о цвете фона кажется неверным.
Сделать фон прозрачным означает, что вы получите фон основного элемента. Я думаю, в этом случае это ваш элемент тела. Поскольку вы установили цвет фона для тега body, все элементы с прозрачным цветом фона будут отображать цвет фона тела.
Изменить:
Прочитав ваш комментарий к приведенному выше ответу, я хотел бы, чтобы отображался путь к изображению, а ширина и высота изображения покрывали весь элемент тела.
Ответ 4 · pavium
Но я думаю, что это то, что должно произойти.
Если элементу div не назначен цвет фона, будет виден цвет фона тела.
Особенно если вы говорите, что фон div прозрачен.
Ответ 5 · Yonatan Karni
не уверен, что вы ожидали. Я получаю последовательное поведение в firefox и IE для этого кода:
<html>
<style>
body
{
background: green;
}
.a
{
bacgkround-color: none;
}
</style>
<body>
<div class="a">hello</div>
<div>world</div>
</body>
</html>
если это более сложный сценарий, использовали ли вы debugBar для проверки примененного стиля или, по крайней мере, FireBug в Firefox, чтобы увидеть, что на самом деле применяется?