标准化设计解决方案 - 标记语言和样式手册? Part 1: Get Down With Markup? 从标记语法谈起 Chapter?7 锚点 HTML中的链接,正确的说法应该称作"锚点",它不仅让我们能指向文档,还能指向页面里的特定段落,更能当作"精准链接"的便利工具.让链接对象接近焦点.在这一章里,我们将看到四种不同的锚点做法,说明每个方法的优点,也会介绍title属性如何能提升链接的易用性,另外也将使用CSS为链接设计样式. 在需要指定到页面的特定部分时,标记锚点是最佳的方法 在示例中,假设我们打算链接到同一个页面中的特定标题: 方法A:空洞的名称 <p><a href="#oranges">About Oranges</a></p> 使用一个内容空白的锚点标签再配上name属性,标记特定的链接点,或许这是你熟悉的方法,在标题前放一个内容空白的<a>,并且连向它(使用#符号,后面加上name属性的值),就能让我们连到页面的特定部分了,当页面包含了很长需要滚动的项目清单时,我们能通过这个方法十分方便的连到特定的项目. 图7-1显示了点击"About Oranges"链接之后的结果,也就是跳到我们标识<a name="oranges"></a>的地方,正好在标题上面. 图7-1.点击连上具体锚点链接的示例 效果不错,但是浪费一个内容空白的标签来标识链接位置有点不合语义,方法B能改进这点. 方法B:全部在名称之内 <p><a href="#oranges">About Oranges</a></p> 与方法A一样,我们仍然使用<a>标签配上name属性,但这次我们把它包在我想要链接的标题外面,这么做看起来的确比较符合语义,在方法A里头,我们的连接对象是...恩,什么都没有,但是在方法B里,我们不仅说明了这段文字是标题标签的一部分,同时也是这个页面的连接锚点之一. 小心<a>的全局样式 如果使用了方法B的话,有个地方必须要注意.如果你为所有的<a>元素指定了全局的CSS样式的话(颜色,文字大小,文字装饰等等),这些样式就会覆盖你为<h2>元素指定的样式.会发生这种情况的原因是,在这个例子里头,<a>标签是位于包围它的<h2>标签之内的子元素. 举例来说,假如你的CSS内有类似这样的声明: a{ 方法B配上这段CSS就会让标题与其他页面内的<a>一样变成绿色,粗体,加上下划线,或许与你期望的<h2>样式不同. 我们能使用<a>的:link伪类以避免这种现象(同时也能获得其他好处),在本章稍后的"技巧延伸"中会详细讨论. 更丰富的名称属性 使用方法B(以及方法A)的好处之一,就是name属性可以处理更丰富的锚点名称,具体来说,就是能在名称之内使用符号 举例来说,如果使用方法B的话,你可以这么做(在此é代表符号"e"): <p><a href="#resumé">My Resumé</a></p> 在处理不属于英文字母的字符时,这个功能十分重要. 但是还有几个方法值得一提,下面这个方法完全不需要使用<a>设定锚点,让我们看看方法C.
Web Standards Solutions The Markup and Style Handbook
这是在设计网站时经常遇到的情况,你想链接到某个页面的特定部分,可是使用者正在阅读的可能是在另外的一个页面,接下来讨论的四种方法之中任选一种都能让你达成目标.
...一些文字...
<a name="oranges"></a>
<h2>Oranges Are Tasty</h2>
...更多文字...
...一些文字...
<h2><a name="oranges">Oranges Are Tasty</a></h2>
...更多文字...
? color:green;
? font-weight:bold;
? text-decoration:underline;
}
...一些文字...
<h2><a name="resumé">Dan's Resumé</a></h2>
...更多文字...
详细解决方案
HTML中的链接,准确的说法应该称作"锚点"
热度:102 发布时间:2012-11-23 00:03:29.0
相关解决方案
- struts2 对象属性流入不进去, 报错:target is null for setProperty(null, "x" [Ljava.lang.Stri
- request.setAttribute("list" "''");该怎么解决
- Exception in thread "main" org.hibernate.HibernateException: /hibernate.cfg.xml解决办法
- struts2标签 <s:if test="表达式">表达式的写法解决方案
- xml文件不能被准确解析/The processing instruction target matching "[xX][mM][lL]" is not al
- sql中获取d天后的日期,格式为"yyyyMMdd"怎么做到
- spring @Scope("prototype")注解更新有关问题,寻求帮助
- 怎么在eclipse的JSP裡在使用JS語法時可以直接""後出現方法
- 关于request.getParamater("name")若干疑点,html5新特性placeholder
- java.lang.NumberFormatException: For input string: "id"该如何处理
- 怎么取<s:property value="news.CONTENT" escape="false"/>内容前几位
- 为什么Ext.getCmp("panelID").collapsed = false;无效呢
- 新人第一帖!JSF有关问题:<h:inputText value="{user.name}"/>
- request.setAttribute("message" message)不能传int参数,该怎么处理
- 关于 if(rs.getString("").trim().equals(""))解决办法
- <base href="<%=basePath%>"> 有关问题
- form 表单交付 <form action="<c:url value='desktop'/>"
- java报错Syntax error on token "return" invalid Type解决方案
- 访问Tomcat的url的时候如何自动调用index.html
- ENCTYPE="multipart/form-data"文件下传有关问题
- request.setAttribute("message" message)不能传int参数,该怎么解决
- 关于 if(rs.getString("").trim().equals("")),该如何处理
- 不走"<script type='text/javascript'>"标签咋回事
- jsp 页面 安插ArrayList 报错。为什么,已经加了import="java.util."了呀!
- enctype="multipart/form-data"的页面中,获取普通表单中文值,
- The requested resource (/webtest/servlet/hello.html) is not availabl 帮忙解决解决方法
- <input type="hidden" name="" value="" />请教这句话的name,value什么意思
- confirm("确定退出系统?") 点击撤除按钮依然执行退出操作
- JSP 页面乱码 页面起首已设置 contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"
- struts.xml资料中的namespace"/"当在/后加东西时没起作用