实现在一个页面内,点击导航栏的不同链接,跳转到不同的页面

1.实现在一个页面内,点击导航栏的不同链接,跳转到不同的页面

<html>

<body>
<h1>HTML 教程目录</h1>

<ul>
<li><a href="#C1">第一章</a></li>
<li><a href="#C2">第二章</a></li>
<li><a href="#C3">第三章</a></li>
<li><a href="#C4">第四章</a></li>
<li><a href="#C5">第五章</a></li>
<li><a href="#C6">第六章</a></li>
<li><a href="#C7">第七章</a></li>
<li><a href="#C8">第八章</a></li>
</ul>

<h2><a name="C1">第一章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<h2><a name="C2">第二章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<h2><a name="C3">第三章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<h2><a name="C4">第四章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<h2><a name="C5">第五章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<h2><a name="C6">第六章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<h2><a name="C7">第七章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<h2><a name="C8">第八章</a></h2>
<p>本章讲解的内容是 ... ...</p>

<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>


<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>
<p>... ... ... ... ... ...</p>

</body>
</html>

延伸阅读:使用 name 属性还是 id 属性?

在 HTML 4.0 之前的版本中,只有使用 <a> 标签的 name 属性才能创建片段标识符。随着 HTML 4.0 中 id 属性的出现,所有 HTML 或 XHTML 元素都可以是片段标识符。这是因为 id 标识符几乎可以用在所有的标签中。<a> 标签为了能够和以前的版本相兼容而保留了 name 属性,同时也可以使用 id 属性。这些属性可以相互交换使用,可以把 id 属性看作是 name 属性的升级版本。name 和 id 属性都可以与 href 属性结合起来使用,这样一个 <a> 标签就可以同时作为超链接和片段标识符使用。

可以简单地将片段标识符看作是对许多编程语言中普遍使用的 goto 语句标签的 HTML 模拟。<a> 标签中的 name 属性或者 <a> 或其他标签中的 id 属性会在文档中放置一个标识。当标签用于链接到该文档时,就等于告诉浏览器要转到(goto)该标识。

id 或 name 属性的值可以是引号引起来的任何字符串。字符串必须是唯一的标记,不能在同一文档中的其他 name 或 id 属性中重复使用,但是可以在不同的文档中再次使用。

如果使用 id 属性,上面的实例可改写为:

<a id="#C1">第一章</a>
<a id="#C2">第二章</a>
<a id="#C3">第三章</a>
<a id="#C3">第四章</a>
...

或者直接在标题中设置 id 属性:

<h2 id="#C1">第一章</h2>
<h2 id="#C2">第二章</h2>
<h2 id="#C3">第三章</h2>
<h2 id="#C3">第四章</h2>
...

但是自己做项目的时候,用的是name属性,结果出现了点击导航,滚动到的页面标题被遮挡的情况,换成id后,问题解决了,具体什么原因,不清楚。


2.如何做1像素细边框的table?

方法1:

#test{border-collapse:collapse;border:1px solid #ddd;}
#test th,#test td{border:1px solid #ddd;}

<table id="test">
	<tr><th>姓名</th><td>Joy Du</td></tr>
	<tr><th>年龄</th><td>26</td></tr>
</table>

方法2:

#test{border-spacing:1px;background:#ddd;}
#test tr{background:#fff;}

<table id="test" cellspacing="1">
	<tr><th>姓名</th><td>Joy Du</td></tr>
	<tr><th>年龄</th><td>26</td></tr>
</table>

IE7及更早浏览器不支持border-spacing属性,但是可以通过table的标签属性cellspacing来替代。



posted @ 2016-04-12 16:19  SophiaLiu  阅读(4385)  评论(0编辑  收藏  举报