我使用 wordpress 建立了一个网站,该网站在除 IE 之外的所有浏览器中都显示良好(惊喜)。我目前正在使用 VirtualBox 来尝试解决这个问题,但是页面太无聊了,我什至不知道从哪里开始。
运行验证器给我以下错误:
第 2 行,第 91 列:“LANG”不是保留名称 ... ttp://www.w3.org/TR/html4/strict.dtd" lang="en-US" xmlns:og="http://ogp.me/ns#...
Error Line 2, Column 91: cannot continue because of previous errors ... ttp://www.w3.org/TR/html4/strict.dtd" lang="en-US" xmlns:og="http://ogp.me/ns#...
以下是网站主题编辑器的相关代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd" <?php language_attributes(); ?>>
由于问题的奇怪性,我什至不确定这是否是真正的问题。为什么微软讨厌我们?!
---编辑--- 我没有提到网址是www.SleepHug.com
这里是完整的标题代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd" <?php language_attributes(); ?>>
<head profile="http://gmpg.org/xfn/11">
<title><?php bloginfo('name'); ?> | <?php is_front_page() ? bloginfo('description') : wp_title(''); ?></title>
<meta http-equiv="content-type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<link rel="stylesheet" type="text/css" href="<?php bloginfo('stylesheet_url'); ?>" />
<?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>
<?php wp_head(); ?>
<link rel="alternate" type="application/rss+xml" href="<?php bloginfo('rss2_url'); ?>" title="<?php printf( __( '%s latest posts', '' ), wp_specialchars( get_bloginfo('name'), 1 ) ); ?>" />
<link rel="alternate" type="application/rss+xml" href="<?php bloginfo('comments_rss2_url') ?>" title="<?php printf( __( '%s latest comments', '' ), wp_specialchars( get_bloginfo('name'), 1 ) ); ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
<!-- Place this snippet wherever appropriate -->
<script type="text/javascript">
(function() {
var li = document.createElement('script'); li.type = 'text/javascript'; li.async = true;
li.src = ('https:' == document.location.protocol ? 'https:' : 'http:') + '//platform.stumbleupon.com/1/widgets.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(li, s);
})();
</script>
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<script type="text/javascript">
(function() {
var s = document.createElement('SCRIPT'), s1 = document.getElementsByTagName('SCRIPT')[0];
s.type = 'text/javascript';
s.async = true;
s.src = 'http://widgets.digg.com/buttons.js';
s1.parentNode.insertBefore(s, s1);
})();
</script>
<script src="//svpply.com/api/all.js#xsvml=1" type="text/javascript" ></script>
</head>
您的网站完全缺少 html 标签:
<!DOCTYPE html>
<html>
...
</html>
此外,您的 DOCTYPE 上方有一个空行,它会触发 Internet Explorer 中的“怪癖模式”。
更多信息在这里:http://en.wikipedia.org/wiki/Quirks_mode在这里:http://www.quirksmode.org/css/quirksmode.html
更新:
改变这个:
<?php
/**
* @package WordPress
* @subpackage SleepHug
*/
?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd" <?php language_attributes(); ?>>
<head profile="http://gmpg.org/xfn/11">
对此:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html <?php language_attributes(); ?>>
<head profile="http://gmpg.org/xfn/11">
事实上,除非你特别需要 HTML 4.01,否则你甚至可以这样做:
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
并且不要忘记在您的 footer.php 文件中添加结束
</html>
。