我创建了两个演示:
演示1:http://jsfiddle.net/DqvTa/7/
演示2:http://jsfiddle.net/DqvTa/8/
演示几乎完全相同.唯一的区别是我设置了#span {display:none;在demo 1和span {display:none;在演示2中.
有人可以解释为什么SPAN元素 – 在演示2中 – 成为块级元素?
我的假设是(在show()期间)jQuery在内部创建一个SPAN元素来检查它是否自然是内联或块级元素.但是因为我在演示2中设置所有SPAN显示:none,所以jQuery无法确定.
顺便提一下这张票:http://bugs.jquery.com/ticket/8099
解决方法
这是一个错误,对吧. 但你可以做$(‘span’).css(‘display’,’inline’);而不是$(‘span’).show();