Непрозрачность Mozilla: 0 не работает

Ищу решение, но нигде не могу найти. У меня есть блок, и у меня есть другой блок под ним. Первый блок имеет стиль "opacity: 0". Таким образом, он находится вверху другого блока, и в этом блоке (у которого непрозрачность равна 0) мало элементов. Проблема в том, что Mozilla opacity: 0 принимает как display: none, и я не знаю, почему это так.

введите здесь описание изображения

любые решения?


person baitas212123    schedule 10.10.2013    source источник
comment
Что вы ожидаете? Вы не можете видеть то, что полностью прозрачно.   -  person SLaks    schedule 11.10.2013
comment
да, но я могу нажимать на элементы (на блок с черными рамками). непрозрачность должна делать блок с красной рамкой невидимым, а не скрывать его вообще   -  person baitas212123    schedule 11.10.2013


Ответы (2)


Если установить непрозрачность родителя на 0, то все его элементы будут скрыты. Может быть, расскажите нам, что вы пытаетесь сделать, и мы постараемся найти лучшую идею, которая будет соответствовать условиям.

person Dvir    schedule 10.10.2013
comment
проблема в том, что я могу нажимать элементы, которые находятся под блоком (с красными рамками). это не должно работать - person baitas212123; 11.10.2013
comment
@ baitas212123 Вы имеете в виду, что div исчез? - person Dvir; 11.10.2013
comment
нет, div с красными рамками вообще исчезает с Mozilla, когда я делаю его непрозрачность 0. Не делает невидимым, но вообще исчезает - person baitas212123; 11.10.2013
comment
@baitas212123 хорошо. так ты говоришь, что это происходит только в мозилле. загрузите свой код на jsFiddle, чтобы посмотреть, что происходит. - person Dvir; 11.10.2013
comment
конечно, откройте это с помощью Mozilla и Chrome, вы увидите разные jsfiddle.net/5zWZe/1 - person baitas212123; 11.10.2013
comment
@ baitas212123 контроллер? - person Dvir; 11.10.2013
comment
да. это не должно работать, потому что в iframe есть оверлей. С хромом все ок, а с мозилой оверлей отсутствует - person baitas212123; 11.10.2013
comment
@ baitas212123 baitas212123, за исключением того факта, что контроллер скрыт в Mozilla, он работает хорошо. оверлей блокирует плеер для обоих. - person Dvir; 11.10.2013
comment
давайте продолжим это обсуждение в чате - person baitas212123; 11.10.2013

Прежде всего, ваш JSFiddle - jsfiddle.net/5zWZe/1/ не использует непрозрачность. Так что этот пример кажется не связанным с вашим вопросом.

Пример с кнопкой, закрытой элементом div, см. здесь JSFiddle - jsfiddle.net/X7S3w/2/. Как видите, кнопка недоступна через div, даже если вы уменьшите непрозрачность до 0. Также обратите внимание, что поведение одинаково как в Firefox, так и в Chromium.

Похоже, у вас особый случай с iframe и флеш-видео. См. другой JSFiddle - jsfiddle.net/X7S3w/3/ с идентичным CSS, но кнопка заменена на iframe. Здесь доступно флэш-видео, хотя div находится над iframe. Но опять же, такое же поведение в Firefox и Chromium.

Кажется, что покрытие iframe/flash-видео с помощью div работает, когда вы изменяете строку запроса URL-адреса YouTube и добавляете ?wmode=transparent

<iframe id="without" src="http://www.youtube.com/embed/5f-n3-pV81A?wmode=transparent"></iframe>
<div id="opacity">opacity</div>

См. рабочий пример на JSFiddle - jsfiddle.net/X7S3w/4/. Теперь div успешно блокирует флеш-видео. И опять же, это работает одинаково в Firefox и Chromium.

Так что, похоже, это скорее проблема флеша, чем какое-то поведение непрозрачности CSS.

person Olaf Dietsche    schedule 10.10.2013
comment
смотри комментарии к первому ответу - person baitas212123; 11.10.2013