当我在中间添加文本时,白色空格div

时间:2016-10-14 20:58:00

标签: html css

当我把文字放入div时,我得到一个空格。如何删除?我想问你如何在div中间制作文本“welkom op dennis website”自动中心。

在这里你可以看到代码:

.container {
  max-width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  display: inline-block;
}
html,
body {
  margin: 0px;
  padding: 0px;
}
.nav {
  height: 5%;
  width: 100%;
  background-color: white;
}
.top {
  height: 40%;
  width: 100%;
  background-color: #1E90FF;
}
.nav {
  background-color: #444;
}
.nav a {
  display: inline-block;
  background-color: #444;
  font-family: Arial;
  padding: 10px 20px;
  text-decoration: none;
  color: white;
  float: right;
}
.nav a:hover {
  background-color: #1E90FF;
}
.logo {
  color: white;
  display: inline-block;
  padding: 10px 20px;
  font-family: Arial;
  text-decoration: none;
}
p.center {
  padding: 150px 550px;
  color: white;
  font-family: Arial;
  font-size: 25px;
   {}
<header>
  <title>Dennis Zwart Home Pagina</title>
  <link href="css/MyStyle.css" rel="stylesheet" style="css" />
</header>

<body>
  <div class="container">

    <div class="nav">
      <text class="logo">Dennis Zwart</text>
      <a href="#">Contact</a>
      <a href="#">Games</a>
      <a href="#">Foto's</a>
      <a href="#">Hobby's</a>
      <a href="#">Home</a>
    </div>
    <div class="top">
      <p class="center">Welkom op de website van Dennis Zwart</p>
    </div>
  </div>

</body>

2 个答案:

答案 0 :(得分:2)

这是因为p { margin-top: 0; } 元素具有自然边距(由浏览器定义)。删除它:

p

然后删除text-align: center; 水平填充,并使用

将文本居中
p {
  margin-top: 0;
  text-align: center;
}

.container {
  max-width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  display: inline-block;
}
html,
body {
  margin: 0px;
  padding: 0px;
}
.nav {
  height: 5%;
  width: 100%;
  background-color: white;
}
.top {
  height: 40%;
  width: 100%;
  background-color: #1E90FF;
}
.nav {
  background-color: #444;
}
.nav a {
  display: inline-block;
  background-color: #444;
  font-family: Arial;
  padding: 10px 20px;
  text-decoration: none;
  color: white;
  float: right;
}
.nav a:hover {
  background-color: #1E90FF;
}
.logo {
  color: white;
  display: inline-block;
  padding: 10px 20px;
  font-family: Arial;
  text-decoration: none;
}
p.center {
  padding: 150px 0px;
  color: white;
  font-family: Arial;
  font-size: 25px;
}

要删除屏幕右侧的空白区域。

<header>
  <title>Dennis Zwart Home Pagina</title>
  <link href="css/MyStyle.css" rel="stylesheet" style="css" />
</header>

<body>
  <div class="container">

    <div class="nav">
      <text class="logo">Dennis Zwart</text>
      <a href="#">Contact</a>
      <a href="#">Games</a>
      <a href="#">Foto's</a>
      <a href="#">Hobby's</a>
      <a href="#">Home</a>
    </div>
    <div class="top">
      <p class="center">Welkom op de website van Dennis Zwart</p>
    </div>
  </div>

</body>
module.registerFactory('browserNotification', function($timeout,webNotification) {
        return {
            show: function(title, body, callback) {
                var snd = new Audio('audio/alert.mp3');
                snd.play();
                //the timeout is to sync the sound with the notification rendering on screen
                $timeout(function() {
                    var hideNotification;
                    webNotification.showNotification(title, {
                        body: body,
                        icon: 'img/icon.png',
                        onClick: function onNotificationClicked() {
                            callback();
                            if (hideNotification) {
                                hideNotification();
                            }
                        },
                        autoClose: 5000 //auto close the notification after 4 seconds (you can manually close it via hide function)
                    }, function onShow(error, hide) {
                        if (!error) {
                            hideNotification = hide;
                        }
                    });
                }, 150);
            }
        }
    });

答案 1 :(得分:1)

导航和蓝色文本字段之间的空间来自折叠边距。您需要删除<p>more on Collapsing Margins.top元素创建的边距。

如果您需要垂直居中的文字,您可以使用相对定位和翻译。

其他注释

  • <text>不是有效的HTML元素,而是使用<p><span><div><a>等。我在答案中将其切换为<a>
  • 我发现您使用百分比高度。那些可能很棘手。为了使百分比高度起作用,必须在父元素上设置高度。如果该父元素的高度是百分比,那么它的父元素需要一个高度集。如果使用百分比,依此类推到根元素<html>。在我的回答中,我将高度切换为px值。
  • 许多块级元素(<div><nav>)已应用width: 100%;,我删除了它们,因为它们不需要。默认情况下,块级元素将始终占据包含元素的100%宽度。
  • 要将导航项垂直居中,我将line-height元素的<a>设置为等于<nav>元素的高度。
  • 我删除了您的.container元素,因为它没有做任何有用的事情。如果您决定添加媒体查询并限制其各种视口大小的宽度,则可能需要稍后(可能位于其他位置)。

&#13;
&#13;
html,
body {
  margin: 0px;
  padding: 0px;
}
.nav {
  height: 45px;
  background-color: white;
}
.top {
  height: 300px;
  background-color: #1E90FF;
}
.nav {
  background-color: #444;
}
.nav .logo {
  float: left;
}
.nav a {
  display: inline-block;
  background-color: #444;
  font-family: Arial;
  padding: 0 20px;
  text-decoration: none;
  line-height: 45px;
  color: white;
  float: right;
}
.nav a:hover {
  background-color: #1E90FF;
}
p.center {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
  color: white;
  font-family: Arial;
  font-size: 25px;
  text-align: center;
}
&#13;
<header>
  <title>Dennis Zwart Home Pagina</title>
  <link href="css/MyStyle.css" rel="stylesheet" style="css" />
</header>

<body>
    <div class="nav">
      <a class="logo" href="#">Dennis Zwart</a>
      <a href="#">Contact</a>
      <a href="#">Games</a>
      <a href="#">Foto's</a>
      <a href="#">Hobby's</a>
      <a href="#">Home</a>
    </div>
    <div class="top">
      <p class="center">Welkom op de website van Dennis Zwart</p>
    </div>
</body>
&#13;
&#13;
&#13;