<div> Фоновое изображение прозрачное, но НЕ текст

Я пытаюсь создать <div> с прозрачным фоном с медленным панорамированием как часть модуля HTML в opencart. Это модуль, поэтому стиль должен быть самодостаточным.

Что у меня есть на данный момент:

<style>
@keyframes backgroundScroll {
0% { background-position: 50% 50%; }
33% { background-position: 1% 50%; }
40% { background-position: 1% 50%; }
66% { background-position: 99% 50%; }
75% { background-position: 99% 50%; }
100% { background-position: 50% 50%; }}
/* added pauses to each edge of the image */

#mtn-scroll {
width: 800px;
height: 100%;
background: url(coolpanoramapicture.jpg) no-repeat; opacity:0.1;
background-size: 250%;
background-position: 50% 50%;
animation: backgroundScroll 60s ease-in-out 1s infinite; }
</style>

<div id = "mtn-scroll">
  <div>
  Content text goes here!
  </div>
</div>

Я хочу, чтобы непрозрачность НЕ влияла на текст. Я слышал звонок об использовании ::перед, но я понятия не имею, где висит молоток. Я что-то понял?

Кто-нибудь знает, как сделать прозрачным ТОЛЬКО фоновое изображение, не прибегая к изысканиям с прозрачным файлом PNG?

"Кто-нибудь знает, как сделать прозрачным ТОЛЬКО фоновое изображение, не прибегая к изысканиям с прозрачным файлом PNG?" - никто не делает, потому что это невозможно. Решением с псевдоэлементом было бы просто разместить его за элементом и затем применить к нему фон и прозрачность.
CBroe 29.03.2018 22:40

DV, очевидно, потому что молоток, который вы не могли увидеть, был так же близок, как ввод «непрозрачность только фонового изображения» в Google.

CBroe 29.03.2018 22:43
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в 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. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
2
207
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Вы были на правильном пути с псевдоэлементом ::before. Вот как это реализовать:

html,
body {
  height: 100%;
}

#mtn-scroll {
  width: 800px;
  height: 100%;
  position: relative;
}

#mtn-scroll::before {
  background: url('https://i.imgur.com/4HLnakJ.jpg') no-repeat;
  opacity: 0.1;
  background-size: 250%;
  background-position: 50% 50%;
  animation: backgroundScroll 60s ease-in-out 1s infinite;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  content: '';
}

#mtn-scroll div {
  position: relative;
}

@keyframes backgroundScroll {
  0% {
    background-position: 50% 50%;
  }
  33% {
    background-position: 1% 50%;
  }
  40% {
    background-position: 1% 50%;
  }
  66% {
    background-position: 99% 50%;
  }
  75% {
    background-position: 99% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}
<div id = "mtn-scroll">
  <div>
    Content text goes here!
  </div>
</div>

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