Pra*_*dep 12 html css margin extra
我正在尝试在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>
Run Code Online (Sandbox Code Playgroud)
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;
}
Run Code Online (Sandbox Code Playgroud)
身体 {
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;
}
Run Code Online (Sandbox Code Playgroud)
这是该页面的链接
http://net4.ccs.neu.edu/home/pradep/
我花了太多时间在这上面.请帮忙.
小智 35
Ege的回答对我来说非常有用.我花了几个小时来找到div中一些图像底部填充的原因.这是线高.在有趣的区域将其设置为0px:
.divclass {
line-height: 0px; /* crucial for bottom padding 0 !!! */
}
Run Code Online (Sandbox Code Playgroud)
我认为你的问题是line-height.是的,就是这样.刚刚添加line-height:0,在萤火虫上,他们粘在一起.
关于内联块的事情是它们的行为就像任何内联文本一样,你在下面的导航中也有类似的问题,因为你在代码中按下了输入,它会将它渲染为一个不间断的空间并添加额外的x边距也在右侧和左侧.这里的X取决于字体大小.
为了解决这个问题,你可以在同一行上关闭和打开标签,如下所示:
<div>
.
.
.
</div><div>
.
.
.
</div>
Run Code Online (Sandbox Code Playgroud)
或者你可以设置font-size和line-height对0的,但如果你没有该专区内的其他选择,那不是总是可能的.
您需要在CSS声明中指定单位.
div.main_nav
{
display: inline-block;
height: 25px; /* set px */
width: 900;
padding: 0;
margin: 0;
vertical-align: bottom;
}
Run Code Online (Sandbox Code Playgroud)
学习如何在Chrome中使用您的开发人员工具,如果您在元素上单击鼠标右键并选择 - >检查它会调出开发工具.然后,您可以查看"指标"和"计算样式"区域,以查看main_nav呈现为30px而不是25px,并且25 css声明旁边还有一个警告符号,并且它已被明确删除.