html - 侧边栏导航和右侧显示内容

标签 html css

我想在右侧显示侧边栏导航(左侧菜单链接)和每个单击的垂直菜单的内容。

例如,假设我有这个左侧菜单:

  • 伦敦
  • 纽约

如果我点击伦敦链接,内容/页面应该显示在右侧,纽约链接也一样。

http://jsfiddle.net/J5nCS/717/

#header {
    background-color:black;
    color:white;
    text-align:center;
    padding:5px;
}
#nav {
    line-height:30px;
    background-color:#eeeeee;
    height:300px;
    width:100px;
    float:left;
    padding:5px;          
}
#section {
    width:350px;
    float:left;
    padding:10px;        
}
#footer {
    background-color:black;
    color:white;
    clear:both;
    text-align:center;
   padding:5px;      
}
<div id="header">
<h1>City Gallery</h1>
</div>

<div id="nav">
London<br>
Paris<br>
Tokyo<br>
</div>

<div id="section">
<h2>London</h2>
<p>
London is the capital city of England. It is the most populous city in the United Kingdom,
with a metropolitan area of over 13 million inhabitants.
</p>
<p>
Standing on the River Thames, London has been a major settlement for two millennia,
its history going back to its founding by the Romans, who named it Londinium.
</p>
</div>

<div id="footer">
Copyright © footer.com
</div>

最佳答案

稍微调整了标签的标记,并将 ID 更改为样式类:

<div class="header">
     <h1>City Gallery</h1>
</div>
<div class="nav">
    <ul>
        <li><a href="#section-london">London</a></li>
        <li><a href="#section-paris">Paris</a></li>
    </ul>
</div>
<div id="section-london" class="tab-content">
    <h2>London</h2>
    <p>London is the capital city of England. It is the most populous city in the United Kingdom, with a metropolitan area of over 13 million inhabitants.</p>
</div>
<div id="section-paris" class="tab-content">
    <h2>Paris</h2>
    <p>Paris, France's capital, is a major European city and a global center for art, fashion, gastronomy and culture. Its picturesque 19th-century cityscape is crisscrossed by wide boulevards and the River Seine. </p>
</div>
<div class="footer">Footer</div>

还有 jQuery 部分:

$(document).ready(function () {
    $('.nav ul li:first').addClass('active');
    $('.tab-content:not(:first)').hide();
    $('.nav ul li a').click(function (event) {
        event.preventDefault();
        var content = $(this).attr('href');
        $(this).parent().addClass('active');
        $(this).parent().siblings().removeClass('active');
        $(content).show();
        $(content).siblings('.tab-content').hide();
    });
});

jsfiddle

关于html - 侧边栏导航和右侧显示内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33021659/

相关文章:

css - 展开 div 以使用 css 获得剩余宽度

html - CSS:使用伪元素时停止父元素闪烁

css - 如何正确选择每一个奇数 child 的第一个 child ?

php - 下拉列表在 chrome 中带有滚动条

css - 如何将 `after` 伪元素的内容属性设置为同级表单元素的属性

css - 将链接作为按钮居中

HTML 空间标记?

html - 大写还是小写的文档类型?

javascript - 在 HTML anchor 中指定 'language' 属性是否会更改事件行为?

html - 文本在 Safari 中的位置与在其他浏览器中的位置不同