<main>元素在Internet Explorer 11中不起作用

Jen*_*ers 13 html css html5 internet-explorer internet-explorer-11

我正在尝试<main>使用CSS 设置元素的宽度.只是用

main {
  width:200px;
}
Run Code Online (Sandbox Code Playgroud)

除了Internet Explorer(Edge确实有效)之外,所有浏览器都可以正常工

看一下这个例子:JSfiddle

IE11的结果:

在此输入图像描述

Chrome中的结果:

在此输入图像描述

Mic*_*l_B 35

mainInternet Explorer不支持HTML5 元素(请参阅浏览器支持数据).

您需要将main块级元素定义为width可以工作.

进行此调整:

main {
  display: block;  /* new */
  width: 200px;
}
Run Code Online (Sandbox Code Playgroud)

因为mainInternet Explorer无法识别该元素 - 这意味着它未在IE的默认样式表中定义 - 它使用CSS初始值(根据规范).

display物业的初始价值是inline.

width内联元素忽略该属性.从规格:

10.3.1内联,未替换元素

width属性不适用.

通过将main元素定义为作者样式中的块级元素,该width属性将起作用.

更多细节:

  • 谢谢,这个有效!很奇怪,IE11不支持这个简单的HTML5标签. (2认同)