Javascript 力<;部门></部门>;以网页底部为中心

Javascript 力<;部门></部门>;以网页底部为中心,javascript,html,css,ajax,Javascript,Html,Css,Ajax,我的HTML中有一个…部分,基本上就像一个工具栏 有没有办法将该部分强制放在网页底部(文档,而不是视口)并居中?试试这个:。我不知道这是否会是一个完美的适合,但我认为它已经足够接近了。你可以给女主角一个: 清晰:两者都有;文本对齐:居中 并将div作为结束体语句之前的最后一个元素。这将迫使它成为最后一个元素,旁边没有任何东西。我想你要找的是: 这是一个优雅的、仅限于CSS的解决方案 我使用它,它与所有浏览器中的各种布局完美配合!据我所知,这是唯一一个适用于所有浏览器和布局的优雅解决方案 @乔希:

我的HTML中有一个
部分,基本上就像一个工具栏


有没有办法将该部分强制放在网页底部(文档,而不是视口)并居中?

试试这个:。我不知道这是否会是一个完美的适合,但我认为它已经足够接近了。

你可以给女主角一个:

清晰:两者都有;文本对齐:居中


并将div作为结束体语句之前的最后一个元素。这将迫使它成为最后一个元素,旁边没有任何东西。

我想你要找的是:

这是一个优雅的、仅限于CSS的解决方案

我使用它,它与所有浏览器中的各种布局完美配合!据我所知,这是唯一一个适用于所有浏览器和布局的优雅解决方案

@乔希:不,不是,这正是布兰克曼想要的,他想要一个页脚粘在文档的底部,而不是视口(浏览器窗口)的底部。因此,如果内容比浏览器窗口短,则页脚会附着在窗口的下端;如果内容长,则页脚会向下移动,直到向下滚动时才可见

Twitter引导实现 我看到很多人在问如何将它与Twitter引导相结合。虽然很容易理解,但这里有一些片段应该会有所帮助

// _sticky-footer.scss SASS partial for a Ryan Fait style sticky footer

html, body {
  height: 100%;
}

.wrapper {
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto -1*($footerHeight + 2); /* + 2 for the two 1px borders */
}

.push {
  height: $footerHeight;
}

.wrapper > .container {
  padding-top: $navbarHeight + $gridGutterWidth;
}

@media (max-width: 480px) {
  .push {
    height: $topFooterHeight !important;
  }
  .wrapper {
    margin: 0 auto -1*($topFooterHeight + 2) !important;
  }
}
以及粗略的标记体:

<body>
    <div class="navbar navbar-fixed-top">
        // navbar content
    </div>
    <div class="wrapper">
        <div class="container">
            // main content with your grids, etc.
        </div>
        <div class="push"><!--//--></div>
    </div>
    <footer class="footer">
        // footer content
    </footer>
</body>

//导航栏内容
//主要内容与您的网格等。
//页脚内容

最好使用javascript确定页面大小。您可以使用window.innerHeight(非IE浏览器)和document.documentElement.clientHeight(IE浏览器)获取高度。使用该值,您应该能够将页面设置顶部的元素绝对定位到该值减去div的高度。如果div的高度是可变的,则需要检查div的离视情况属性以获取实际高度

对于定心,请使用以下示例:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <style>
            .wrapper
            {
                width: 100%;
                padding-left: 50%;
            }
            .test
            {
                width: 400px;
                margin-left: -200px;
                border: 1px solid black;
                padding-left: -200px;
            }
        </style>
    </head>
    <div class="wrapper">
    <div class="test">This is a test</div>
    </div>
 </html>

.包装纸
{
宽度:100%;
左:50%;
}
.测试
{
宽度:400px;
左边距:-200px;
边框:1px纯黑;
左侧填充:-200px;
}
这是一个测试

在想要居中的div周围有一个包装div。包装器div的宽度为100%,内部div的宽度设置为您想要的任何宽度。给包装器div留50%的左填充,给内部div留一个等于其宽度一半的负左边距。

我只想清楚你在这里说的是什么:

网页的底部( 文档(而不是视口)

当然,div将位于“文档”的底部,具体取决于您的布局

如果它不在文档的底部,或者不注意您的列有多高,是因为您的浮动吗?明确:两者皆有;是为了解决这个问题

粘性页脚是我认为您要寻找的,但当您说的是文档,而不是视口时,我有点困惑。粘性页脚通常会这样做:注意短页面,如果短于视图端口,粘性页脚会将页脚div固定到底部

下面是一些粘性的页脚(有成千上万的页脚,但这是我最喜欢的):

  • (前面列出)
  • (那里有一个我就是找不到)
也许如果你能给出一个简单的例子,或者更具体一点你想要什么?希望这有帮助:D


-Ken

如果我理解正确,您希望无论垂直滚动位置如何,工具栏始终可见。如果这是正确的,我会推荐以下CSS

  body {
    margin:0;
    padding:0;
    z-index:0;
  }

  #toolbar {
    background:#ddd;
    border-top:solid 1px #666;
    bottom:0;
    height:15px;
    padding:5px;
    position:fixed;
    width:100%;
    z-index:1000;
  }

为我调整浏览器大小时不起作用。否则看起来不错——捕捉到文档的底部,或者,如果文档没有滚动,捕捉到视口的底部(而不仅仅是浮动)。-1因为它谈论的是视口,这不是他想要的!我想他只是提醒说,如果文档比视口长,页脚应该在滚动到末尾之前显示。这是一个粘性的页脚。使用“绝对位置”,您将得到一个在大多数情况下都很难看的粘性视口页脚。页脚是否始终可见?不管滚动位置如何?Josh,这种技术是否存在跨浏览器问题?我知道IE6不支持固定定位。但我在IE7和FF2中试过了,效果很好。@Hector我想知道添加position:relative是否可以修复position:relative使它不会粘在底部。