【问题标题】:Alternative to frames with CSS?用 CSS 替代框架?
【发布时间】:2012-02-22 05:04:40
【问题描述】:

我正在寻找一种使用 CSS 或任何其他可以适应设计和实现的方法来实现布局的方法。

“顶部”部分是固定区域。 “左侧”区域将是指向“主”区域的文本链接列表。更具体地说,指向个人资料的链接列表将在“左侧”区域中,我希望关联的个人资料显示在“主要”区域中。

我可以用框架来做到这一点,但由于它不是最好的方式或不被 HTML5 支持,我想要一些其他的替代方法。有什么想法吗?

【问题讨论】:

    标签: javascript ajax html dhtml


    【解决方案1】:

    是的......你可以使用 jquery 和 load() 函数,因为我想你只使用 HTML 而不是 serversidescripting。

    【讨论】:

      【解决方案2】:

      您可以通过在 CSS 中将一些元素设置为 position: fixed; 来实现此目的。例如,为顶部制作一个 div,为您的侧边栏制作一个 div,在 CSS 中为position: fixed; 设置它们。 您的主要区域 div 只是一个普通的 div,它将与普通的 body 一起滚动。

      它非常简单,适用于所有主流浏览器(我认为不包括一些移动浏览器)。

      不需要 jQuery 或 Javascript。您可以在主要区域中使用 PHP 包含之类的东西。

      更新 您也可以制作固定大小的DIV,并添加属性overflow: scroll;得到类似的结果。

      【讨论】:

      • +1 虽然您可以使用 JavaScript/jQuery “逐步增强”,以便单击左侧的 URL 会通过 AJAX 加载页面并将其插入主区域。
      • 当然。事实上,如果您不使用 url 哈希,并且现在使用 url 哈希对他来说可能太高了。
      【解决方案3】:

      您不需要 Frames,如果您不喜欢,也不需要任何重新加载或 AJAX。 将所有 HTML 放在一个页面上。 将您的头部、侧面和内容放在不同的 div 容器中。 使用 style.display = "none" 或 style.display = "" 来引导左侧的哪个链接打开内容区域中的哪个 div...

      您也可以使用 AJAX 获取配置文件的内容。

      我不知道这个答案对你来说是否足够好,因为我不知道你的 JavaScript 知识。

      【讨论】:

      • 这对性能很差,对额外加载不可见内容的移动设备也不利。当然,这对于小页面来说效果很好。
      • 它的哪一部分? AJAX 部分还是内联部分?我写了两个替代方案,并询问请求者的知识。
      • 将所有 HTML 内容放在一个页面中并使用 display: none;
      【解决方案4】:
      猜你喜欢
      • 1970-01-01
      • 2013-08-23
      • 2010-09-22
      • 1970-01-01
      • 1970-01-01
      • 2010-11-09
      • 2014-08-14
      • 2022-01-13
      • 1970-01-01
      相关资源
      最近更新 更多