Как отобразить изображение (которое прозрачно) поверх другого изображения с помощью CSS

Как отобразить изображение (которое прозрачно) поверх другого изображения с помощью CSSI необходимо для отображения заставки в браузере. Заставка должна состоять из двух частей: статического и движущегося изображения. На движущемся изображении есть несколько зданий, а в оставшейся области (262 x 192), где нет зданий, оно прозрачно. Код приведен ниже.

<!DOCTYPE html>
<html>
    <head>
        <title>Moving Screen Saver</title>
        <style>
            html, body {
                position: relative;
                height: 100%;
                width: 100%
            }
            #bgimg {
                background-image: url("background/background2.jpeg");
                position: absolute;
                background-repeat: no-repeat;
                background-size: cover;
                width: 100%;
                height: 100%;
            }
            #bdgimg {
                background-image: url("buildings/bdg2.jpeg");
                opacity: 0.5;
                position: absolute;
                background-repeat: no-repeat;
                bottom: 0px;
                left : 0px;
                width: 500px;
                height: 500px;
            }
        </style>
    </head>
    <body>
        <div id = "bgimg">
        </div>
        <div id = "bdgimg">
        </div>
    </body>
</html>

Отображается второе изображение. Но вместо прозрачной области отображается какой-то цвет, а не прозрачный. Я пробовал с разными значениями непрозрачности, но без толку. Может ли кто-нибудь помочь мне решить эту проблему.

Когда я использую ваш код с изображениями-заполнителями, он работает должным образом. Я предполагаю, что ваше изображение имеет неожиданный цвет или что-то еще происходит за пределами предоставленной информации.

Michael Elliott 10.04.2018 05:02

Спасибо @MichaelElliott. Я пробовал использовать разные изображения, но ни одно изображение не работает. Не уверен, почему он не отображается прозрачным. Я скопировал и вставил весь код, который пытался.

kadina 10.04.2018 05:08

Можете ли вы сделать снимок экрана и отредактировать свой комментарий, чтобы он содержал его?

Michael Elliott 10.04.2018 05:18

Спасибо @MichaelElliott. Я добавил рассматриваемый скриншот.

kadina 10.04.2018 05:26
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
1
4
207
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Надеюсь, это поможет вам, добавьте свойство ниже в свой css

#bdgimg {
   background-color:transparent;
}

Поскольку он также отлично работает и без этого, с вашим изображением могут быть другие проблемы.

РЕДАКТИРОВАТЬ Вот демо.

<!DOCTYPE html>
<html>
    <head>
        <title>Moving Screen Saver</title>
        <style>
            html, body {
                position: relative;
                height: 100%;
                width: 100%
            }
            #bgimg {
                background-image: url("https://cdn.pixabay.com/photo/2017/08/30/01/05/milky-way-2695569_960_720.jpg");
                position: absolute;
                background-repeat: no-repeat;
                background-size: cover;
                width: 100%;
                height: 100%;
            }
            #bdgimg {
                background-image: url("https://cdn.pixabay.com/photo/2017/12/05/09/12/business-2998905_960_720.png");
                opacity: 1;
                position: absolute;
                background-repeat: no-repeat;
                bottom: 0px;
                left : 0px;
                width: 500px;
                height: 500px;
            }
        </style>
    </head>
    <body>
        <div id = "bgimg">
        </div>
        <div id = "bdgimg">
        </div>
    </body>
</html>

Спасибо @Ash. Я пробовал использовать разные изображения, но ни одно изображение не работает. Не уверен, почему он не отображается прозрачным. Я скопировал и вставил весь код, который пытался.

kadina 10.04.2018 05:09

Будет полезно, если вы сможете поделиться демонстрацией своей страницы, если это возможно.

Ash 10.04.2018 05:13

Я добавил скриншот в свой вопрос.

kadina 10.04.2018 05:27

Думаю, проблема в том, что вы не используете файл изображения .png. Пожалуйста, конвертируйте его в формат png.

Ash 10.04.2018 05:28

Я использую файл .jpeg. Разве мы не можем использовать файлы jpeg?

kadina 10.04.2018 05:30

jpg не поддерживает прозрачность.

Ash 10.04.2018 05:31

Точно сказать не могу. Потому что я тоже пробовал с .png. Но не работает.

kadina 10.04.2018 05:35

Я предлагаю вам использовать Photoshop, чтобы извлечь изображение здания из файла .jpg, а затем сохранить его как файл .png. Преобразование напрямую в png вам не поможет.

Ash 10.04.2018 05:37

Я пробовал совершенно разные файлы .png. Я не конвертировал файлы .jpeg в файлы .png.

kadina 10.04.2018 05:41

Я попробовал с другим изображением png и начал работать. Возможно, файлы, которые я пробовал, неправильные.

kadina 10.04.2018 05:57

Другие вопросы по теме