Chrome中的jQuery返回“block”而不是“inline”

时间:2011-05-02 07:18:11

标签: javascript jquery html css google-chrome

我有两个内联的div。它们都有相似的风格,重要的是都是内联的。

JQuery报告称他们的css“display”仅在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();

有谁知道发生了什么,或者更重要的是我能做些什么? (除了拉我的头发......它开始受伤;))

1 个答案:

答案 0 :(得分:8)

正如我在评论中所说,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'之外,盒子是漂浮的   并且'display'根据设置   下表。

总结上述表格:float = display: block