Chrome + jQuery隐藏/显示内联

时间:2010-03-27 15:44:47

标签: jquery google-chrome show

我有这些东西

<ul class="ul_std"  style="float:right">
             <li class="action_buttons" ><a id="button_deleteNormal" class="button_small button_small_red"  >Διαγραφή</a></li>
                <li class="action_buttons"><a id="button_editCancel" class="button_small"  >Ακύρωση Τροποποίησης</a></li>
                <li class="action_buttons"><a id="button_editNormal" class="button_small"  >Τροποποίηση</a></li>
                <li class="action_buttons" style="margin-right:0" ><a id="button_addNormal" class="button_small">Προσθήκη</a></li>
              </ul>

问题是我隐藏了除id = button_addNormal的锚之外的所有内容 at $(document).ready()... 一切正常但在chrome时我想要显示它们,它将它们显示为显示:内联而不是显示:内联块... css类button_small有display:inline-block ....

Firefox,IE 6+工作正常......没有在safari上测试过,但我希望它没问题......

为什么chrome会杀死内联块? 解决方案是放入.css(“display”,“inline-block”)而不是.show()

3 个答案:

答案 0 :(得分:1)

根据您的问题,我无法在Chrome中重现这一点(至少在最新版本和 5.0.356.2 测试版中)。
See a working demo here on jsFiddle

当我使用$('ul li a:not(#button_addNormal)').hide();隐藏除最后一个之外的所有内容并再次显示它们时,它会以inline-block的形式返回。我测试了jQuery 1.3.2 1.4.2 nightly ,结果相同(也测试/使用最新稳定的chrome: 4.1.129.1042 )。

其他一些东西在你的页面中打破了这一点,如果没有剩下的代码,很难说出什么。

答案 1 :(得分:1)

我在jsp中编写了一个web商店系统,并在上周发现了这个错误。我认为这个问题是一个缓存问题,因为代码在Users.jsp中工作,而相同的代码不在Subjects.jsp中。这两个代码都适用于FF,IE,Opera。有时它有效,有时不行。 使用hide('slow'),它是相同的解决方案......

答案 2 :(得分:0)

使用$(“#something”)。css(“display”,“block”);而不是显示。 (或内联块)