html - 如何在页面中居中放置两个方 block ?

标签 html css styling

我有一个页面,其中显示了两个网站的状态——判断它们是否正在运行。如果该站点已启动,我希望该 block 具有浅绿色背景,如果没有,则为浅红色。站点名称应在 block 内居中。

这是我到目前为止尝试过的:

    body {
      font-family: sans-serif;
    }
    #container {
      width: 800px;
      height: 600px;
      margin: 0 auto;
      border: 1px solid #ccc;
    }
    #smallcontainer {
      width: 208px;
      height: 100px;
      margin: 200px auto auto;
    }
    .status {
      height: 100px;
      width: 100px;
      background: #efefef;
      float: left;
      margin-left: 2px;
      border: 1px solid #ccc;
    }
<div id="container">
  <div id="smallcontainer">
    <div class="status"></div>
    <div class="status"></div>
  </div>
</div>

它有效(参见 full screen output ),但我觉得我离题太远了。我如何使用 CSS 以正确的方式做一些简单的事情?我觉得我的代码是 hack。以及如何将文本准确地垂直和水平地写在 block 的中心?

是否有可能让它适用于所有桌面屏幕尺寸?也许我应该以百分比而不是像素来指定宽度和高度?

最佳答案

您可以使用 flexbox . <子> support

HTML

<div id="container">
    <div class="status"></div>
    <div class="status"></div>
</div>

CSS

#container {
    width: 800px;
    height: 600px;
    margin: 0 auto;
    border: 1px solid #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
}
.status {
    height: 100px;
    width: 100px;
    background: #efefef;
    margin-left: 2px;
    border: 1px solid #ccc;
}

http://jsfiddle.net/b9n3h1en/

关于html - 如何在页面中居中放置两个方 block ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30565840/

相关文章:

javascript - 禁用与状态相关的整个表单元素。 react

html - 让两个单选按钮表现为一个复选框

javascript - 如何修复页面滚动

php - 如何使用 jQuery 更新带有多个变量的输入框或标签

ios - 你如何删除 UITableView 编辑单元格的阴影?

jquery - 将按钮文本更改为粗体

javascript - 是否可以在 javascript 中找到 dom 节点的自定义滚动条 css 属性?

html - 如何支持 Opera 中按钮的 css 背景图像属性

css - 如何在我的网站上嵌入和自定义 RSS 提要?

android - 在 android map v2 中创建自定义样式 map 时无法解析 setMapStyle()