我正在寻找解决方案,但找不到任何地方。我有块,下面还有其他块。第一个块的样式为“不透明度:0”。所以他在另一个块的顶部,并且在那个块(不透明度为 0)中几乎没有元素。问题就在那里,那个 mozilla opacity: 0 accepting as display: none 我不知道为什么会这样。
任何解决方案?
如果将父级的不透明度设置为 0,那么他的所有元素都将被隐藏。也许告诉我们你想做什么,我们会尝试找到一个更好的想法来回答这些条款。
首先,您的JSFiddle - jsfiddle.net/5zWZe/1/不使用不透明度。所以这个例子似乎与你的问题无关。
有关由 div 覆盖的按钮的示例,请参阅此JSFiddle - jsfiddle.net/X7S3w/2/。如您所见,即使您将不透明度降低到 0,也无法通过 div 访问该按钮。另请注意,Firefox 或 Chromium 中的行为是相同的。
看来,您有一个 iframe 和 flash 视频的特殊情况。查看其他JSFiddle - jsfiddle.net/X7S3w/3/具有相同的 CSS,但按钮被 iframe 替换。尽管 div 位于 iframe 上方,但此处可以访问 flash 视频。但同样,Firefox 和 Chromium 中的行为相同。
当您修改 youtube URL 的查询字符串并附加时,用 div 覆盖 iframe/flash 视频似乎有效?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 成功阻止了 flash 视频。同样,这在 Firefox 和 Chromium 中同样有效。
所以看起来这更像是一个 Flash 问题,而不是一些 CSS 不透明度行为。