10

我想显示一个具有以下限制的 div:

  • 自动隐藏在 1024px 宽度下
  • 可以通过 1024px 宽度下的按钮切换,但如果我单击 somwhere(不在 div 内),activeDiv则应删除该类

我在codepen有一个虚拟示例

于是出现了以下问题:

  • 在 IE10 中,切换按钮不起作用(不隐藏/显示 div)我检查了开发人员工具,但没有迹象display: initial
  • 在 Chrome 29 中,div 出现在不在其下方的按钮旁边。(Firefox 也是一样)
    我知道displaydiv 的默认值是block,但是这个 css 不仅适用于div标签,这就是我尝试使用initial.
4

2 回答 2

33

initial并不意味着“给定元素的给定属性的默认值”。它的意思是“规范定义的给定属性的默认值”。的初始值displayinline,不是,如此block所述。这与您将其应用于哪种元素无关。如前所述,IE 不支持关键字。initial

如果要将元素显示为块,请使用display: block. 如果您希望它内联显示,请使用display: inline. 如果您希望它使用浏览器默认值,则根本不要设置display属性。

于 2013-09-17T13:52:32.087 回答
0

你这是什么意思?

这个 CSS 不仅适用于 div 标签

display:initial 是 CSS3,IE10 不支持。如果没有指定它可以继承的显示规则,它将回退到显示:内联。

display:block;
display:initial;

提供后备显示:块。

于 2013-09-17T13:35:28.247 回答