我习惯于 Wordpress 自动将 IE 特定 ID 属性添加到 HTML 标记,以编写特定于 Internet Explorer 的 css 类。我刚刚注意到,当我在 IE9 中查看该站点时,此功能当前不起作用。
在 IE8...
<html id="ie8" lang="en-US">
在 IE9...
<html lang="en-US">
这是预期的行为吗?有人知道为什么是这样吗?
我习惯于 Wordpress 自动将 IE 特定 ID 属性添加到 HTML 标记,以编写特定于 Internet Explorer 的 css 类。我刚刚注意到,当我在 IE9 中查看该站点时,此功能当前不起作用。
在 IE8...
<html id="ie8" lang="en-US">
在 IE9...
我习惯于 Wordpress 自动将 IE 特定 ID 属性添加到 HTML 标记,以编写特定于 Internet Explorer 的 css 类。我刚刚注意到,当我在 IE9 中查看该站点时,此功能当前不起作用。
在 IE8...
<html id="ie8" lang="en-US">
在 IE9...
<html lang="en-US">
这是预期的行为吗?有人知道为什么是这样吗?
可能是因为 IE8 和之前的所有奇怪的怪癖需要黑客才能解决,IE9 相对不错,所以可能不需要为其添加额外的定义。
您的 Wordpress 主题中可能已经定义了类似的内容:
<!--[if IE 6]> <html id="ie6" <?php language_attributes(); ?>> <![endif]-->
<!--[if IE 7]> <html id="ie7" <?php language_attributes(); ?>> <![endif]-->
<!--[if IE 8]> <html id="ie8" <?php language_attributes(); ?>> <![endif]-->
<!--[if !(IE 6) | !(IE 7) | !(IE 8)]><!--> <html <?php language_attributes(); ?>> <!--<![endif]-->
这些条件注释将被 IE 读取,并将 ID 添加到 HTML。这可能是为了加载一些 CSS,或者是特定于那个版本的 IE。
如果你愿意,你可以这样写:
<!--[if IE 9]> <html id="ie9"> <![endif]-->
并在其中添加一些特定于 IE9 的内容。
可能是因为 IE8 和之前的所有奇怪的怪癖需要黑客才能解决,IE9 相对不错,所以可能不需要为其添加额外的定义。
可能是因为 IE9 被认为是一个里程碑,它解决了过去困扰 WordPress 的许多问题。
如果您仍然想要这种功能,为什么不使用这样的条件注释:
<!DOCTYPE html>
<!--[if lt IE 7 ]><html class="ie ie6" <?php language_attributes(); ?>> <![endif]-->
<!--[if IE 7 ]><html class="ie ie7" <?php language_attributes(); ?>> <![endif]-->
<!--[if IE 8 ]><html class="ie ie8" <?php language_attributes(); ?>> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--><html <?php language_attributes(); ?>> <!--<![endif]-->
<head>
</head>
<body>
</body>
</html>
好多了对吧?这当然会进入header.php
你的主题。
希望有帮助,米奇。