Chrome 中的 jQuery 返回“块”而不是“内联”
Posted
技术标签:
【中文标题】Chrome 中的 jQuery 返回“块”而不是“内联”【英文标题】:jQuery in Chrome returns "block" instead of "inline" 【发布时间】:2011-08-16 19:16:09 【问题描述】:我有两个内联的 div。它们都有相似的样式,重要的是它们都是内联的。
JQuery 报告他们的 css“显示”仅在 chrome 中被阻止。我真的需要知道这两个是内联的。
jsfiddle here
css:
div
display: inline;
width: 50%;
float: left;
height: 100px;
text-align: center;
font-weight: bold;
padding: 10px;
box-sizing: border-box;
.div1
background-color: black;
color: white;
border: 2px solid grey;
.div2
background-color: white;
color: black;
border: 2px solid black;
html:
<div class="div1">1</div>
<div class="div2">2</div>
jQuery:
jQuery("div").click(function()
jQuery(this).append("<br/><span>" + jQuery(this).css("display") + "</span>");
);
jQuery("div").click();
有谁知道发生了什么或更重要的是我能做什么? (除了把我的头发拉出来......它开始受伤了;))
【问题讨论】:
你知道float: left
强制display: block
吗? display: inline
什么也没做。如果您不相信我,请删除它。
噢!把它放在一个答案中,我会把它标记为正确的。另外我在哪里可以找到这些信息? w3c?
是的,W3C。 (编辑:对不起,没有更新看到下面发布的答案包含完全相同的链接:()
【参考方案1】:
正如我在评论中所说,float: left
强制 display: block
。
这是规范中的相关信息:
http://www.w3.org/TR/CSS21/visuren.html#propdef-float
元素生成一个方块框 向左浮动。
然后:
http://www.w3.org/TR/CSS21/visuren.html#dis-pos-flo
否则,如果 'float' 有值 除了 'none',盒子是浮动的 和“显示”是根据设置 下表。
总结一下这张表:float
= display: block
。
【讨论】:
谢谢。更新小提琴jsfiddle.net/MKRac/1以防其他人有同样的问题/以上是关于Chrome 中的 jQuery 返回“块”而不是“内联”的主要内容,如果未能解决你的问题,请参考以下文章
Chrome 控制台中的 jQuery (8.0.552.237)
Chrome 中的 Animation/.animate 有时会“上升”而不是“下降”