【问题标题】:jQuery in Chrome returns "block" instead of "inline"Chrome 中的 jQuery 返回“块”而不是“内联”
【发布时间】: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。 (编辑:对不起,没有更新看到下面发布的答案包含完全相同的链接:()

标签: javascript jquery html css google-chrome


【解决方案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

【讨论】:

猜你喜欢
  • 2011-05-15
  • 2016-12-11
  • 2017-11-12
  • 1970-01-01
  • 2015-05-20
  • 2015-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多