繁体   English   中英

5px额外保证金被添加到每个div的底部

[英]5px extra margin getting added to the bottom of each div

我正在尝试在css中为页面设计一个简单的标题。 我计划将两个div叠加在一起。 顶部有一个标签,底部是一个简单的单个图像div。 但是在渲染时我看到额外的5px被添加到这两个div的高度。 所以我无法将底部正好放在另一个底部。

自动存在5px的底部保证金。 我尝试了负边距,将全局边距和填充重置为零。 仍然没有用。

继承人的代码。

<div class ="main_nav">
 <div class="first_tab">
 <img src ="images/startup/tab1_brown.png" height="25" width="90" alt="Temp" /> 
 </div>
 <div class = "ind_tab">
 <img src ="images/startup/tab1_orange.png" height="25" width="90" alt="Temp"/>
 </div>
 <div class = "ind_tab">
 <img src ="images/startup/tab1_brown.png" height="25" width="90" alt="Temp" />
 </div>
</div>
<div class="lock">
 <img src ="images/startup/divbg_new.png" alt="Temp" />
</div>

CSS:

 *{ margin:0; padding:0; }
ul.master_navigation
{
    font-size: 125%;
    font-weight: bold;
    text-align: center;
    list-style: none;
    margin: 0.5em 0;
    padding: 0;
}

ul.master_navigation li
{
    display: inline-block;
    padding: 0 1%;
}

a
{
    color: #08f;
    font-weight: bold;
    text-decoration: none;
}

a:visited
{
    color: #88f;
}

a:hover
{
    color: #f00;
}

p
{

    text-align: justify;
}


p.cent
{
    text-align: left;
}

div.header
{    
    height: 200;
}

div.main_nav
{ 
    display: inline-block;
    height: 25;

    width: 900;
    padding: 0;
    margin: 0;
    vertical-align: bottom;

}

div.first_tab
{    
    height: 25;
    float: left;


}
div.ind_tab
{    

    height: 25;
    float: left;
    margin-left: -10px;
    z-index: -5;

}

div.lock
{
    margin-top: -100;
    height: 91;
    width: 900;
    padding: 0;
    margin: -5;

}

身体 {

    width:900px;
    max-width: 100%;
    margin: auto;
    padding: 0;
    background-image:url(images/startup/bg_2.gif);
    background-repeat:repeat-x;
}

.pad 
{
    padding: 0;
    margin: 0;

}

这是该页面的链接

http://net4.ccs.neu.edu/home/pradep/

我花了太多时间在这上面。 请帮忙。

Ege的回答对我来说非常有用。 我花了几个小时来找到div中一些图像底部填充的原因。 这是线高。 在有趣的区域将其设置为0px:

.divclass {
    line-height: 0px; /* crucial for bottom padding 0 !!! */
}

我认为你的问题是line-height 是的,就是这样。 刚刚在萤火虫上添加了line-height:0 ,它们粘在了一起。

关于内联块的事情是它们的行为就像任何内联文本一样,你在下面的导航中也有类似的问题,因为你按下了输入你的代码,它会将它渲染为一个不间断的空间并添加额外的x边距也在右侧和左侧。 这里的X取决于字体大小。

为了解决这个问题,你可以在同一行上关闭和打开标签,如下所示:

<div>
.
.
.
</div><div>
.
.
.
</div>

或者你可以将font-sizeline-height0 ,但如果你在div中没有​​其他选择器,这并不总是可行的。

您需要在CSS声明中指定单位。

http://jsfiddle.net/m7YCW/

div.main_nav
{ 
    display: inline-block;
    height: 25px;       /* set px */
    width: 900;
    padding: 0;
    margin: 0;
    vertical-align: bottom;    
}

学习如何在Chrome中使用您的开发人员工具,如果您在元素上单击鼠标右键并选择 - >检查它会调出开发工具。 然后,您可以查看“指标”和“计算样式”区域,以查看main_nav呈现为30px而不是25px,并且25 css声明旁边还有一个警告符号,并且它已被明确删除。

尝试在图像上设置vertical-align:bottom

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM