【问题标题】:Vertically align a Div in the Browser window (-not- within another element)在浏览器窗口中垂直对齐 Div(-不在另一个元素内)
【发布时间】:2013-05-17 07:27:56
【问题描述】:

我有一个 div,我希望它始终垂直对齐到浏览器窗口高度的 50%。

我不知道浏览器窗口的高度会是多少,如果用户缩放这个窗口。如果有必要将其放置在另一个元素中,那很好,但正如刚刚指定的那样,我不知道任何时候视口会有多高。

我也不会使用 javascript。

我已通读该网站,我一直在寻找解决方案,但我真的很想(再次)把它扔出去,因为我还没有找到一个完全做到这一点的解决方案,无论是不择手段还是不择手段。

谢谢。

【问题讨论】:

  • position: absolute; top: 50%;, BTW, 50% 不会给你一个垂直居中对齐的 div。为此,您需要从窗口高度的 50% 中减去 div 高度的一半。显然它需要 javascript。

标签: css html alignment center


【解决方案1】:

您没有指定是否有固定高度?如果是这样,那么您可以使用一个元素来执行此操作,只需添加以下示例 CSS:

.centered {
  height: 100px;
  width: 100%;
  background: red;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -50px; /* half the height of the element */
}

您可以使用多种技术,具体取决于您希望如何实现它。一些(较旧的)但仍然相关的阅读here

【讨论】:

  • 精湛 - 元素确实有固定的宽度和固定的高度,这正是我想要的。我将相同的原则应用于元素的左边距和宽度,以将其也沿水平方向定位。非常感谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-11-30
  • 2011-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-20
相关资源
最近更新 更多