如何防止命名锚引入换行符

Fra*_*een 2 html css anchor

在以下代码段中:

<a name="top"></a>
<div class="topbar">
  <img src="banner.jpg" alt="The Group Company" width="100%" />
  <div class="printOnly">
    <center><b>Printed from www.company.com</b></center>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

命名的anchor(<a name="top"></a>)在topbar div 之前引入换行符.有办法防止这种情况吗?由于各种原因,命名锚点必须位于包含横幅图像的div上方.

我已经尝试使用CSS 将锚点的高度设置为0px显示none,但这会使锚定非功能性(即从页面中其他位置链接到#top不再起作用).

这有解决方法吗?

gio*_*gio 8

实际上,使用锚点链接到页面上的某个部分已经过时了.您可以改用全局id属性.这也解决了您的问题,因为您不必添加额外的dom元素:

<div class="topbar" id="top">...</div>
Run Code Online (Sandbox Code Playgroud)

别的地方:

<a href="#top">Go to top</a>
Run Code Online (Sandbox Code Playgroud)

轻而易举!

  • 更多信息:设置`display:none`将阻止元素被渲染.你面临的问题不是`a`标签引入换行符,而是`div`标签是拒绝与`a`标签位于同一行.`div`默认是块级元素,`a`是内联.有关更多信息,请访问http://www.w3schools.com/html/html_blocks.asp.giorgio的解决方案对你有用,但你应该知道这一点. (3认同)