试图在几个页面中包含一个带有自己CSS的标题

时间:2011-01-13 01:24:10

标签: html css

我为我的网站的各个部分制作了一个标题,所有这些都运行在不同的软件上(mediawiki,phpbb,常规HTML等)。我希望它成为每一页的绝对顶部。

将它包含在我想要的任何页面中最简单的方法是什么?如何在不与同类型的其他元素冲突的情况下包含其CSS属性?我尝试了两个类和ID无济于事。例如,保留这些ul和li CSS属性,而不会与已经在给定页面上的ul和li元素发生冲突。

这是代码,包括CSS:

<head>
<style>
* {
    padding: 0;
    margin: 0;
}
body {
    font-family: Tahoma;
}
a {
    text-decoration: none;
    color: #ffffff;
    font-size: 20px;
    font-family: Tahoma;
}
ul {
    display: inline;
    margin: 0 auto;
}
ul li {
    list-style: none;
    display: inline;
    margin-left: 6px;
    margin-right: 6px;
    padding-left: 3px;
    padding-right: 3px;
    padding-top: 3px;
    border-bottom: 3px solid #34549F;
}
ul li:hover {
    background-color: #7FBCF9;
    border-bottom: #ffffff;
    color: #000000;
    border-bottom: 3px solid #ffffff;
    color: black;
}
#fullNav {
    text-align: center;
    width: 100%;
    border-bottom: 2px solid;
    background-color: #34549F;
}
</style>
</head>
<body>
<div id="fullNav">
<ul>
    <li><a href="foo">foo</a></li>
    <li><a href="foo2">foo2</a></li>
    <li><a href="foo3">foo3</a></li>
    <li><a href="foo4">foo4</a></li>
</ul>
</div>
</body>

1 个答案:

答案 0 :(得分:2)

似乎你有一点不好意思,因为我没有很好地规划实施。我假设你的服务器上有PHP,因为你正在运行phpBB。

我认为包含代码的最简单方法是为每个不同的软件编辑模板,并在同一位置编辑include("example.php")require("example.php")模板。

在PHP文件中,您可以为标题

创建模板
    <? function makeHeader(){
     /* header html which only includes <div>, etc and 
      not the full html required to generate a page layout. */
      <div id="fullNav">
<ul >
    <li ><a href="foo">foo</a></li>
    <li ><a href="foo2">foo2</a></li>
    <li ><a href="foo3">foo3</a></li>
    <li ><a href="foo4">foo4</a></li>
</ul>
</div>
    }
    ?>

在各种HTML模板中,您可以使用<? makeHeader() ?>来调用它,这会引入您的HTML。

标题的CSS应该捆绑在一起,然后也可以使用以下内容从一个地方引用整个网站: <link rel="stylesheet" type="text/css" href="example.css" />

为避免CSS名称冲突,请为标头的id和类使用唯一名称。因此,您可以使用#header之类的内容代替#AndreisGlobalHeader。它不是万无一失的,但它可以节省你不得不通过现有的CSS寻找碰撞的时间。在CSS中使用classid链接也有助于消除任何问题。