-2

我的页面上有两个 DIV。其中一个设置为display:none基于某些条件。它在 IE10、Firefox 和 Chrome 上运行良好。但它不适用于 IE8、IE9 和 IE10 兼容性视图。结果,它显示了两个 DIV。有人可以建议如何解决这个问题吗?

<div id="dv1" style="background: url(http://abc.com/images/green.gif) no-repeat scroll 0px 0px transparent; height: 26px; width: 171px; display: none;"></div>


<div id="dv2" style="background:url(http://abc.com/images/red.gif) no-repeat scroll 0 0 transparent;height:26px; width:142px; padding-left:18px;padding-right:11px;"/>
4

4 回答 4

3

你忘了把</div>两个 div 放在一起。

我想你想要像下面这样的东西。

<div id="dv1" style="background: url(http://abc.com/images/green.gif) no-repeat scroll 0px 0px transparent; height: 26px; width: 171px; display: none;"></div>

<div id="dv2" style="background:url(http://abc.com/images/red.gif) no-repeat scroll 0 0 transparent;height:26px; width:142px; padding-left:18px;padding-right:11px;"></div>

检查演示,它在所有浏览器中都能正常工作。

于 2013-07-04T05:06:31.847 回答
2

<div>不是自闭标签。您不能通过将其写<div .... />在末尾来结束此标签。它们是容器标签,它们应该包含一些工作元素display: none

例如:

<div style="display: none;">
     What ever inside will never show
</div>

进行这些更改,它将按您的意愿工作。

于 2013-07-04T05:13:13.697 回答
0

如果你想隐藏两个 DIV,你的 html 标记应该是这样的,div2必须在里面div1

<div id="dv1" style="background: url(http://abc.com/images/green.gif) no-repeat scroll 0px 0px transparent; height: 26px; width: 171px; display: none;">
    <!-- div1 content -->    
    <div id="dv2" style="background:url(http://abc.com/images/red.gif) no-repeat scroll 0 0 transparent;height:26px; width:142px; padding-left:18px;padding-right:11px;">
        <!-- div2 content -->
    </div>
</div>
于 2013-07-04T05:06:49.660 回答
0

使用 CSS 而不是内联样式

<html>
  <head>
    <style>
     .dv1 {
       background: url(http://abc.com/images/green.gif) no-repeat scroll 0px 0px transparent; 
       height: 26px; 
       width: 171px; 
       display: none;
     }
     .dv2 {
       background:url(http://abc.com/images/red.gif) no-repeat scroll 0 0 transparent;
       height:26px; 
       width:142px; 
       padding-left:18px;
       padding-right:11px;
     }
    </style>
  </head>
  <body> 
    <div id="dv1"></div>
    <div id="dv2"></div>
  </body>
</html>
于 2013-07-04T05:10:03.343 回答