在此上下文中,杂散开始标记头,元素样式不允许作为元素主体的子元素。 (抑制此子树中的更多错误。)

时间:2015-06-08 17:51:46

标签: php html css validation

在我纠正我的代码之后出现了这些验证错误(将链接放到了头部内的Icon)。我相信这个问题结合在我的header.php和home.php中,从它的外观和我试图解决它。验证者还说我的<doctype! html>因某种原因而流浪。

Header.php代码:

<!DOCTYPE html>
<html lang="sv">
<head>
<meta charset="utf-8">
<title><?php echo $title; ?></title>

<link rel="stylesheet" href="style/stylesheet.css" title="stylesheet">

<link rel="shortcut icon" property='icon' href="img/favicon.ico">

<?php if(isset($pageStyle)) : ?> 
<style type="text/css">
<?php echo $pageStyle; ?>
</style>
<?php endif; ?>
</head>

Home.php代码:

<?php 
include("incl/config.php"); 
$title = "Hem";
$pageId = "hem";
$pageStyle = null;
?>

<?php include("incl/header.php"); ?>

<head>
<style>
html {
    background: url("img/church.jpg") no-repeat center center fixed;
    background-size:cover;

}
</style>
</head>

正如您所看到的,<head>或doctype似乎都不是流浪的。您可以看到<style>位于<head>内,而不是<body>内。带有背景的<style>的原因是在home.php中而不是在我的样式表中设置的,因为我的网站上的每个页面都有不同的图像作为背景。 这段代码中可能是结构错误吗?

1 个答案:

答案 0 :(得分:0)

最好是打开包含文件中的<head>,以便不在该包含文件中关闭它。然后,您可以选择添加到<head>。然后在主代码中关闭它。

试试这个

Header.php代码:

<!DOCTYPE html>
<html lang="sv">
<head>
<meta charset="utf-8">
<title><?php echo $title; ?></title>

<link rel="stylesheet" href="style/stylesheet.css" title="stylesheet">

<link rel="shortcut icon" property='icon' href="img/favicon.ico">

<?php if(isset($pageStyle)) : ?> 
<style type="text/css">
<?php echo $pageStyle; ?>
</style>
<?php endif; ?>

Home.php代码:

<?php 
include("incl/config.php"); 
$title = "Hem";
$pageId = "hem";
$pageStyle = null;
?>

<?php include("incl/header.php"); ?>

<style>
html {
    background: url("img/church.jpg") no-repeat center center fixed;
    background-size:cover;

}
</style>
</head>