【问题标题】:Blacking out content leaving one page div visable将内容涂黑,使一页 div 可见
【发布时间】:2010-01-25 05:54:51
【问题描述】:

所以我想做一些类似于苹果检查器工具所做的事情,但我正在从事的项目使用 CSS。

因此,这个想法是在网站的某个页面上,该网站被遮蔽(很像灯箱或厚箱),但某些 Div 和其他元素仍然可见。这类似于 Safari 在您检查元素时所做的事情。除了该元素之外,它会将页面的其余部分涂黑。

那么,有什么想法吗?

干杯!

J

【问题讨论】:

标签: safari css overlay


【解决方案1】:

在使用 Dojo Javascript 小部件时,它在大多数情况下通过隐藏一个大元素 (display:none; background-color:#000; opacity:0.5;) 来实现模式对话框,尽管它的定位是覆盖屏幕(position:absolute; top:0; left:0; 并且宽度和高度由 Javascript 设置为完整的窗口大小)。然后给它一个z-index 值,并且所有打算可见的元素都在它上面给出一个z-index。如果您可以相对或绝对定位要突出显示的所有元素,则此方法适合您。

【讨论】:

    【解决方案2】:

    只有 CSS?如果是这样,我能想到的最好的就是:

    <style>
    a:hover *:not(#except)
    {
        background:green;
    }
    </style>
    <a href="#">
       Link
       <p>
           green
       </p>
       <p id="except">
           black
       </p>
    </p>
    

    不幸的是 :not() 选择器是 CSS3 的一部分,大多数浏览器还不支持它(但 Safari 4 支持)。 这是一种可能性,但不是很好。

    另一种选择是使用 Javascript。如果您只使用矩形块元素,如何让元素的 x 和 y 值保持正常,然后切出该元素的四个部分(上、下、左、右)。绝对定位一些背景是一些半透明PNG的div。 即。

    ------------------
    |lef|---up---|rig|
    |t--|________|ht-|
    |---| normal |---|
    |---|________|---|
    |---|-down---|---|
    ------------------
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-03
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多