【发布时间】:2014-06-12 22:44:37
【问题描述】:
我有一个像这样的简单侧边栏:
<div class="sidebar">
<ul class="nav">
<li class="Page1"><a href="Page1.html">Page1</a></li>
<li class="Page2"><a href="Page2.html">Page2</a></li>
<li class="Page3"><a href="Page3.html">Page3</a></li>
</ul>
</div>
此代码存在于每个页面中:page1.html、page2.html、page3.html。
在 Page1.html 上,我希望 Page1 不可点击。
在 Page2.html 上,我希望 Page2 不可点击。
在 Page3.html 上,我希望 Page3 不可点击。
是否可以在没有 Javascript 的情况下做到这一点,即纯 HTML 和 CSS ? 如果没有,使用 Javascript、jQuery 最简单的方法是什么?
【问题讨论】:
-
如果 PHP 是一个选项,这应该不是什么大问题。
-
您是否正在使用服务器端脚本创建动态页面?
-
正确的方法是使用 CSS 使当前页面看起来像不可点击。因为您在每个页面中重复 html,您只需要添加另一个类来指示当前页面,并为此编写一个 CSS。说得通?几乎每个网站都这样做。
-
使用 CSS 或 Javascript 禁用链接并不是一个好方法,因为它没有考虑到可访问性问题。请参阅本页列表中的第 10 号:The Ten Most Violated Homepage Design Guidelines。如果你可以添加一个改变样式的 CSS 类,为什么不直接删除
<a>标签呢?如果您可以使用 Javascript 添加onclick事件,为什么不直接删除<a>标记?如果您使用服务器端语言动态创建页面,请不要将<a>标记放在首位。如果不是链接,请不要将其设为链接。
标签: javascript jquery html css anchor