Html编辑页面内容

问题描述 投票:0回答:2

我是html和css的新手,并找到了我想要使用的侧边栏示例。问题是内容出现在所有侧边栏页面上。

如何获取其他页面的内容?

我可以看到,当我点击它们时,网页会更改为不同的页面。但内容仍然相同。我认为这是错误的,或者我必须为每个页面创建一个类但我不知道语法。

    <head>
    <title>OpereX Project</title>
    <style>
    body 
    {
        font-family: "Lato", sans-serif;
    }
    
    .sidenav 
    {
        height: 100%;
        width: 160px;
        position: fixed;
        z-index: 1;
        top: 0;
        left: 0;
        background-color: #99ccff;
        overflow-x: hidden;
        padding-top: 20px;
    }
    
    .sidenav a 
    {
        padding: 6px 8px 6px 16px;
        text-decoration: none;
        font-size: 25px;
        color: black;
        display: block;
    }
    
    .sidenav a:hover 
    {
        color: #f1f1f1;
    }
    
    .main 
    {
        margin-left: 160px; /* Same as the width of the sidenav */
        font-size: 28px; /* Increased text to enable scrolling */
        padding: 0px 10px;
    }
    
    @media screen and (max-height: 450px) 
    {
        .sidenav {padding-top: 15px;}
        .sidenav a {font-size: 18px;}
    }
    </style>
    </head>
    <body>
    
    <div class="sidenav">
      <a href="#about">About</a>
      <a href="#services">Services</a>
      <a href="#clients">Clients</a>
      <a href="#contact">Contact</a>
    </div>
    
    <div class=main>
      <h2>Project</h2>
    </div>
         
    </body>
    </html> 
html css
2个回答
0
投票

仅使用html,它不会像那样工作。为了实际替换'main'部分的内容,您必须使用javascript。你可以使用普通的javascript或使用一个流行的框架,如Angular或任何其他框架。如果你只想简单地坚持使用html和css,我可以看到两个选项:

1 - 您为每个内容创建一个单独的html页面,并在每个内容上复制粘贴与一般布局和sidenav相关的所有内容,但放置不同的内容。然后,您将导航栏链接更改为指向其他html页面

<a href="services.html">Services</a>

这很简单,但如果页面增长则需要管理的噩梦,但是你将使用你知道的东西,这可能是学习基础知识的好方法。

2 - 您可以将所有内容放在单个页面上,并为不同的部分创建命名部分。然后保持链接不变,因为它们当前指向当前页面上的ID('#idname'语法)。然后,您只需要为每个与链接匹配的部分添加ID。

<div id="clients">
    clients content
</div>

此时的链接只会将您的页面向下滚动到所选部分。这也不是你想要的,但这只适用于html和css。请看第二种方法的例子:https://jsfiddle.net/gouk0b8t/


0
投票

您还应该创建其他页面,即about.html并在那里添加您的内容并将其添加到锚标记的href中,如下所示。

<head>
    <title>OpereX Project</title>
    <style>
    body 
    {
        font-family: "Lato", sans-serif;
    }
    
    .sidenav 
    {
        height: 100%;
        width: 160px;
        position: fixed;
        z-index: 1;
        top: 0;
        left: 0;
        background-color: #99ccff;
        overflow-x: hidden;
        padding-top: 20px;
    }
    
    .sidenav a 
    {
        padding: 6px 8px 6px 16px;
        text-decoration: none;
        font-size: 25px;
        color: black;
        display: block;
    }
    
    .sidenav a:hover 
    {
        color: #f1f1f1;
    }
    
    .main 
    {
        margin-left: 160px; /* Same as the width of the sidenav */
        font-size: 28px; /* Increased text to enable scrolling */
        padding: 0px 10px;
    }
    
    @media screen and (max-height: 450px) 
    {
        .sidenav {padding-top: 15px;}
        .sidenav a {font-size: 18px;}
    }
    </style>
    </head>
    <body>
    
    <div class="sidenav">
      <a href="about.html">About</a>
      <a href="services.html">Services</a>
      <a href="clients.html">Clients</a>
      <a href="contact.html">Contact</a>
    </div>
    
    <div class=main>
      <h2>Project</h2>
    </div>
         
    </body>
    </html>
© www.soinside.com 2019 - 2024. All rights reserved.