块元素之间垂直的神秘差距

时间:2016-08-20 21:49:54

标签: html css position margin padding

[已解决]我回答了我自己的问题,但Stack Overflow不允许我将自己的帖子设置为2天的答案。谢谢! :)

如何消除这两个块元素之间的小差距?我尝试将空白区域设置为无,并将所有边距/填充设置为0.当我使用Google Chrome Inspector Tool进行检查时,我找不到导致间隙的原因。那边怎么样了?

这与其他人似乎都没有的内联块差距无关,因为它们不是内联元素。我也尝试改变子元素的位置,但这也不起作用。

此问题是否与“明确修复”有关?我应该用吗?我是一个非常初学的程序员,所以也许我忽略了这个简单的问题,但我觉得我已经尝试了一切。

[注意]:我也重置了css,因此它不是来自浏览器的样式表。

以下是codepen的链接。

function getStartAndEndDate($week, $year) 
{
    $time = strtotime("1 $year", time());
    $day = date('w', $time);
    $time += ((7 * $week) + 1 - $day) * 24 * 3600;
    $return[0] = date('Y-n-j', $time);
    $time += 6 * 24 * 3600;
    $return[1] = date('Y-n-j', $time);
    return $return;
}
.mobile-navigation {
  position: relative;
  text-align: center;
  list-style: none;
  vertical-align: top;
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.4s ease;
  transition: max-height 0.4s ease;
}
.open {
  max-height: 500px;
}
.mobile-navigation li,
.mobile-navigation a {
  color: white;
  font-size: 12pt;
  font-family: 'Special Elite';
  text-transform: lowercase;
  list-style: none;
  box-sizing: border-box;
}
.mobile-navigation a {
  padding-bottom: 1em;
  padding-right: 8em;
  padding-left: 8em;
}
.mobile-navigation li {
  padding: 1em;
  border-top: 1px solid white;
  background: rgba(0, 0, 0, 0.2);
}
.mobile-navigation a:active,
.mobile-navigation li.current-menu-item > a,
.mobile-navigation li.current-page-parent > a,
.mobile-navigation li.current_page_parent > a,
.mobile-navigation li.current-page-ancestor > a,
.mobile-navigation li.current-menu-parent > a,
.mobile-navigation li.current-menu-ancestor > a,
.mobile-navigation a:hover {
  color: tan !important;
  font-weight: bold !important;
}
.mobile-navigation .sub-menu {
  display: none;
  list-style-type: none;
  padding-bottom: 0.2em;
}
mobile-navigation li.current-menu-item > ul.sub-menu,
.mobile-navigation li.current-menu-item li.menu-item-has-children > ul.sub-menu,
.mobile-navigation li.current-page-ancestor > ul.sub-menu {
  display: block !important;
}
/* Hamburger */

.hamburger {
  padding: 1em;
  display: inline-block;
  float: left;
  box-sizing: border-box;
}
.mobile-header .meta {
  display: inline-block;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  background: black;
}
.mobile-header img {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: 30px;
  width: auto;
  display: inline-block;
  position: absolute;
}
.mobile-header .site-branding {
  margin: 0;
  padding: 0;
}
.hamburger-line {
  border-bottom: 4px solid white;
  width: 35px;
  margin-bottom: 6px;
}
.hamburger-line:last-child {
  margin-bottom: 0;
}
* {
  padding: 0;
  margin: 0;
}

2 个答案:

答案 0 :(得分:0)

添加行高:0;移动标题修复了这个问题。

答案 1 :(得分:0)

您的.meta 设置为inline-box,这就是问题所在。

将其设置为block并将其划分为一定高度,然后设置。如果您想要摆脱所有空格,您还需要在margin-top: 0;上设置.mobile-navigation > ul