我刚刚更新了我的网站,使用PHP "include“函数为每个页面添加一个CSS菜单。当我在线查看include函数的结果时,它添加了第二个HTML并指向每个页面。网站和菜单运行得很好,但对我来说这看起来不是很好的设计。
我的CSS代码在一个名为menu.html的文件中。我试图从menu.html文件中删除HTML和头代码,希望避免在最终结果中出现第二个实例,但它不起作用。菜单显示不正确。
这是一个问题吗?或者我应该做一些其他的事情来消除HTML和Head的第二次插入?
下面是使用"include“函数调用菜单的文件中的部分代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML><HEAD>
<META NAME="Description" CONTENT="Gary and Nancy's travel photo gallery">
<META NAME="Keywords" CONTENT="Gary and Nancy's travel photo gallery">
<META http-equiv="title" CONTENT="Gary and Nancy's travel photo gallery">
<META NAME="revisit-after" CONTENT="30 days">
<META NAME="classification" CONTENT="travel">
<META NAME="robots" CONTENT="all">
<META NAME="distribution" CONTENT="global">
<META NAME="products" CONTENT="Travel Photos">
<TITLE>Gary and Nancy's Photo Gallery</TITLE>
<link Rel=Stylesheet href="style.css" type="text/css">
</HEAD>
<font class=a24b color="#937666">Gary and Nancy's Photo Gallery</font>
<br><br>
<div class="menu">
<?php include 'menu.html';?>
</div>
<br>以下是menu.html文件的部分代码:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="mbcsmbmcp.css" type="text/css" />
</head>
<body>
<div id="mbmcpebul_wrapper" style="max-width: 804px;">
<ul id="mbmcpebul_table" class="mbmcpebul_menulist css_menu">
<li class="first_button"><div class="buttonbg gradient_button gradient38" style="width: 62px;"><a href="index.php" class="button_1">Home</a></div></li>
<li><div class="buttonbg gradient_button gradient38" style="width: 94px;"><div class="arrow"><a>Australia</a></div></div>
<ul class="gradient_menu gradient116">
<li class="gradient_menuitem gradient29 first_item"><a href="cairns.php" title="">Cairns</a></li>
<li class="gradient_menuitem gradient29"><a href="heron.php" title="">Heron Island</a></li>
<li class="gradient_menuitem gradient29"><a href="pdouglas.php" title="">Port Douglas</a></li>
<li class="gradient_menuitem gradient29 last_item"><a href="mb.php" title="">Great Barrier Reef</a></li>
</ul></li>这是我在网上看到的结果代码,即包含双重HTML和HEAD:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML><HEAD>
<META NAME="Description" CONTENT="Gary and Nancy's travel photo gallery">
<META NAME="Keywords" CONTENT="Gary and Nancy's travel photo gallery">
<META http-equiv="title" CONTENT="Gary and Nancy's travel photo gallery">
<META NAME="revisit-after" CONTENT="30 days">
<META NAME="classification" CONTENT="travel">
<META NAME="robots" CONTENT="all">
<META NAME="distribution" CONTENT="global">
<META NAME="products" CONTENT="Travel Photos">
<TITLE>Gary and Nancy's Photo Gallery</TITLE>
<link Rel=Stylesheet href="style.css" type="text/css">
</HEAD>
<Body>
<center>
<font class=a24b color="#937666">Gary and Nancy's Photo Gallery</font>
<br><br>
<div class="menu">
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="mbcsmbmcp.css" type="text/css" />
</head>
<body>
<div id="mbmcpebul_wrapper" style="max-width: 804px;">
<ul id="mbmcpebul_table" class="mbmcpebul_menulist css_menu">
<li class="first_button"><div class="buttonbg gradient_button gradient38" style="width: 62px;"><a href="index.php" class="button_1">Home</a></div></li>
<li><div class="buttonbg gradient_button gradient38" style="width: 94px;"><div class="arrow"><a>Australia</a></div></div>
<ul class="gradient_menu gradient116">
<li class="gradient_menuitem gradient29 first_item"><a href="cairns.php" title="">Cairns</a></li>
<li class="gradient_menuitem gradient29"><a href="heron.php" title="">Heron Island</a></li>
<li class="gradient_menuitem gradient29"><a href="pdouglas.php" title="">Port Douglas</a></li>
<li class="gradient_menuitem gradient29 last_item"><a href="mb.php" title="">Great Barrier Reef</a></li>
</ul></li>发布于 2019-11-13 02:45:07
“在我看来这是个糟糕的设计”
...yep。您不应该将HTML文档包含在另一个HTML文档中。去掉内在的东西。
Menu.html应该包含特定于菜单的超文本标记语言,而不包含其他内容。然后可以使用include()将其插入到主文档体中。您可能还需要保留样式表链接
发布于 2019-11-13 02:49:29
去掉menu.html上所有的头信息,只需要把这一行放在下面(把它放在主文件的头中)
<link rel="stylesheet" href="mbcsmbmcp.css" type="text/css" />https://stackoverflow.com/questions/58824781
复制相似问题