【问题标题】:Main menu CSS is behind pdf inside iframe in IE主菜单 CSS 在 IE 中 iframe 内的 pdf 后面
【发布时间】:2018-04-12 02:49:54
【问题描述】:

我已经使用 CSS3 和 iframe 标签创建了菜单栏,可以在其中加载 PDF 文件。

但我的 CSS 菜单隐藏在 iframe 内的 PDF 后面(仅在 IE 中)。在谷歌浏览器中它工作正常。但在 IE 中,根本不起作用。 .问题是 CSS 菜单隐藏在 iframe pdf 后面。

我不确定它有什么问题。我尝试添加 z-index 但它不起作用。

这是我的代码如下。

test.html

<!DOCTYPE html>
<html>
    <head>
        <title>Test</title>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
        <link href="styletest.css" rel="stylesheet" type="text/css" media="all">
    </head>
    <body>
    <div class="wrapper row">
        <nav id="mainav" class="hoc clear"> 
            <ul class="clear">
                <li class="active"><a href="index.php">Home</a></li>
                <li><a class="drop" href="">About Us</a>
                    <ul>
                        <li><a href="#">Sub menu 1</a></li>
                        <li><a href="#">Sub menu 2</a></li>
                        <li><a class="drop" href="">Sub menu 3</a>
                            <ul>
                                <li><a href="#">Extra sub menu 1</a></li>
                            </ul>
                        </li>
                    </ul>
                </li>
                <li><a href="#">Contact Us</a></li>
            </ul>       
        </nav>
    </div>
    <iframe id="pdf" src="images/test.pdf#zoom=65&scrollbar=0" width= "100%" height= "700"></iframe>
    </body>
</html>

teststyle.css

/* Menu Navigation
--------------------------------------------------------------------------------------------------------------- */
nav ul, nav ol {
    margin:0; 
    padding:0; 
    list-style:none;
}
#mainav li a{
    color:inherit; 
    background-color:inherit;
}
#mainav .active a, #mainav a:hover, #mainav li:hover > ab{
    color:#00BCDF; 
    background-color:inherit;
}
#mainav li li a, #mainav .active li a {
    color:#FFFFFF; 
    background-color:rgba(0,0,0,1); 
    border-color:rgba(0,0,0,.6);
}
#mainav li li:hover > a, #mainav .active .active > a {
    color:#FFFFFF; 
    background-color:#00BCDF;
}
#mainav, #breadcrumb, .sidebar nav {
    line-height:normal;
}
#mainav .drop::after, #mainav li li .drop::after, #breadcrumb li a::after, .sidebar nav a::after {
    position:absolute; 
    font-family:"FontAwesome"; 
    font-size:10px; 
    line-height:10px;
}
#mainav ul {
    text-transform:uppercase;
    border-top:1px solid #999;   
}
#mainav ul ul {
    z-index:9999;
    position:absolute;
    width:180px;
    text-transform:none;
    font-weight:400;
}
#mainav ul ul ul {
    left:180px; top:0;
}
#mainav li {
    display:inline-block;  
    position:relative;
    margin:0 15px 0 0;  
    padding: 0;
}
#mainav li:last-child {
    margin:0;
}
#mainav li a {
    display: block;
    padding: 20px 0;
}
#mainav li li {
    width:100%;  
}
#mainav li li a {
    border:solid; 
    border-width:0 0 0 0;
}
#mainav .drop {
    padding-left:15px;
}
#mainav li li a, #mainav li li .drop {
    display:block;
    margin:0;
    padding:10px 15px;  
}
#mainav ul ul {
    visibility:hidden; opacity:0;  
}
#mainav ul li:hover > ul {
    visibility:visible;  
    opacity:1;
}
@media (max-width:900px) and (min-width:0px) {
    #mainav ul {
        font-size: 11px;
    }
}​
.cover {
    border: none;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 100;
}
#pdf {
    position: relative;
    z-index: 1;
}

感谢有人可以帮助我解决这个问题。

谢谢。

【问题讨论】:

    标签: html css internet-explorer iframe


    【解决方案1】:

    我过去曾注意到 Internet Explorer 的这个问题(在我的例子中,是一个内部带有 Flash 元素的 iframe。)

    我的解决方法是在页面上放置一个空的 iframe,在您实际想要显示的元素后面。这将“掩盖”另一个 iframe,但让您的元素可见。

    在您的情况下,将以下代码放入每个 LI 标记中似乎可行:

    <iframe style="background-color: transparent; left: 0; top: 0; width: 100%; height: 100%; position: absolute; border-width: 0; z-index: -1"></iframe>
    

    当然,这些样式可能应该只是在一个类中,而您应该将该类提供给 iframe。

    【讨论】:

    • 感谢您的反馈。我先试试。 . :)
    • 你能在你的回答中更新我上面的代码吗?因为如果我将其添加为空 iframe ,您的代码似乎可以工作。但是当我添加
    猜你喜欢
    • 1970-01-01
    • 2010-12-14
    • 1970-01-01
    • 1970-01-01
    • 2010-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多