html - 使消息出现在屏幕中间

标签 html twitter-bootstrap css

我最近开始使用 Bootstrap,我创建了我的 Logo ,使其位于页面的左上角,然后 nav 栏位于同一行,但位于右侧,然后我想在屏幕中间说:“Welcome blablah”

但是,欢迎位出现在屏幕的顶部,而不是中间,因此出于某种原因它与 Logo 重叠。

不确定为什么要这样做,猜测是一些错误的编码等。

body {
  font-family: 'Open Sans', sans-serif, Arial;
  font-size: 16px;
  color: #6D6D6D;
  background-color: #F5F5F5;
  font-weight: 300;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Montserrat', sans-serif, Arial;
  padding-bottom: 5px;
  color: #373432;
  line-height: 1em;
  font-weight: normal;
}

a {
  text-decoration: none;
  outline: none;
}

.parallax {
  background-image: url("../Images/back1.jpg");
  min-height: 1000px;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
}

.logo {
  float: left;
  padding-top: 50px;
  padding-left: 40px;
}

.logo h1 {
  text-transform: uppercase;
  font-weight: 900;
  font-size: 60px;
  letter-spacing: -5px;
  line-height: 50px;
  color: white;
}

.navbar-nav>li>a {
  line-height: 6px;
}

.navbar {
  float: right;
  padding-top: 53px;
  padding-right: 60px;
  font-size: 13px;
  text-transform: uppercase;
}

.navbar-default {
  background-color: transparent;
  border-top: 0px solid rgba(0, 0, 0, 0.5);
  border-bottom: 0px solid rgba(0, 0, 0, 0.5);
  border-left: 0px solid rgba(0, 0, 0, 0.5);
  border-right: 0px solid rgba(0, 0, 0, 0.5);
}

.navbar-default .navbar-nav>li>a {
  color: #ffffff;
}

.navbar-default .navbar-nav>li>a:hover,
.navbar-default .navbar-nav>li>a:focus {
  background-color: #F8BD23;
  text-decoration: none;
  color: #ffffff;
  -webkit-transition: background-color 200ms linear;
  -moz-transition: background-color 200ms linear;
  -o-transition: background-color 200ms linear;
  -ms-transition: background-color 200ms linear;
  transition: background-color 200ms linear;
}

.navbar-nav>li {
  padding-left: 30px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<div class="parallax">
  <div class="logo"><img src="http://placehold.it/50x50"></div>
  <nav class="navbar navbar-default">
    <div class="container-fluid">
      <div class="navbar-header">
        <button aria-controls="navbar" aria-expanded="false" class="navbar-toggle collapsed" data-target="#navbar" data-toggle="collapse" type="button"><span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span></button>
      </div>
      <div class="navbar-collapse collapse" id="navbar">
        <ul class="nav navbar-nav">
          <li>
            <a href="#">Home</a>
          </li>
          <li>
            <a href="#">a</a>
          </li>
          <li>
            <a href="#">b</a>
          </li>
          <li>
            <a href="#">c Us</a>
          </li>
          <li>
            <a href="#">d</a>
          </li>
          <li>
            <a href="#">e</a>
          </li>
          <li>
            <a href="#">f</a>
          </li>
          <li class="dropdown">
            <a aria-expanded="false" aria-haspopup="true" class="dropdown-toggle" data-toggle="dropdown" href="#" role="button">Classes</a>
            <ul class="dropdown-menu">
              <li>
                <a href="#">a</a>
              </li>
              <li>
                <a href="#">b</a>
              </li>
              <li>
                <a href="#">c</a>
              </li>
              <li>
                <a href="#">d</a>
              </li>
              <li>
                <a href="#">We</a>
              </li>
              <li>
                <a href="#">r</a>
              </li>
              <li>
                <a href="#">a</a>
              </li>
            </ul>
          </li>
        </ul>
      </div>
      <!--/.nav-collapse -->
    </div>
    <!--/.container-fluid -->
  </nav>
  <div class="container">
    <div class="HomeMes">
      <h1>WELCOME</h1>
    </div>
  </div>
</div>

我可以“修复”它的方法是在 HomeMes 类上执行 margin-top: 200px; 但我知道这是糟糕的编码,所以我正在尝试找到正确的方法。如果有人能让我知道我做错了什么,那就太好了。谢谢。

所以它应该是这样的:

Logo                                            Navbar


                    Welcome message

最佳答案

好了,先生,将您的容器类更改为:

.container {
  width:100%;
  height:100%;
  display:flex;
  justify-content:center;
  flex-direction: column;
  align-items: center;
}

在 chrome 中测试它并且它有效,但由于某种原因它在代码片段预览中不起作用。希望这对你有帮助。 Display:flex 在尝试水平+垂直对齐元素时有很大帮助!

关于html - 使消息出现在屏幕中间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44948573/

相关文章:

javascript - 我可以处理 HTML <button/> 元素上的右键单击事件吗?

php - php 中的 Jquery onchange 问题

android - 背景图像并不总是居中

css - 如何使内联图像在较小的屏幕上响应

html - 使用 CSS 添加垂直线和对齐图标

javascript - .css() 函数不会为任何元素设置任何属性

html - 将图片放在 Angular 落,将文字放在中间

html - 居中对齐不一致

javascript - 动态添加时 onKeydown 不起作用

html - DIV 内的 CSS 对接