无法消除填充

时间:2013-07-27 00:55:15

标签: html css styles padding

我正好想弄清楚如何降低/删除标题框中的填充。我附上了相关的html和css代码,并截取了我正在处理的内容。我正在尝试降低top和title,title和navBar以及navBar和bottom之间的填充。如果有人愿意浏览代码,我真的很感激。谢谢!

enter image description here

HTML代码

<nav>
<ul>
    <li><a href="#">Home</a></li>
    <li><a href="#">Tutorials</a>
        <ul>
            <li><a href="#">Photoshop</a></li>
            <li><a href="#">Illustrator</a></li>
            <li><a href="#">Web Design</a>
                <ul>
                    <li><a href="#">HTML</a></li>
                    <li><a href="#">CSS</a></li>
                </ul>
            </li>
        </ul>
    </li>
    <li><a href="#">Articles</a>
        <ul>
            <li><a href="#">Web Design</a></li>
            <li><a href="#">User Experience</a></li>
        </ul>
    </li>
    <li><a href="#">Inspiration</a></li>
</ul>
</nav>

CSS代码

#details {
font-size:16px;
font-family: Herculanum, "Gill Sans", Optima, Tahoma, sans-serif;
color:#A36D6A;
padding:0px;
}
#titleName {
font-size:30px;
font-family: Chalkduster, "Gill Sans", Optima, Tahoma, sans-serif;
text-transform: uppercase;
color:#A32F2B;
}   
#headerDesign {
background-color: #2A4557;
margin:0px;
border:5px outset #fff;
text-align:center;
padding-top:10px;
padding-bottom:0px;
font-family: Chalkduster, "Gill Sans", Optima, Tahoma, sans-serif;
}
nav ul ul {
display:none;
}

nav ul li:hover > ul {
display:block;
}

nav ul {
background: #efefef; 
background: linear-gradient(top, #efefef 0%, #bbbbbb 100%);  
background: -moz-linear-gradient(top, #efefef 0%, #bbbbbb 100%); 
background: -webkit-linear-gradient(top, #efefef 0%,#bbbbbb 100%);
box-shadow: 0px 0px 9px rgba(0,0,0,0.15); 
padding: 0px 10px;
border-radius: 10px;
list-style: none;
position:relative;
display:inline-table;
}
nav ul:after {
content:""; 
clear:both; 
display:block;
}
nav ul li {
float:left;
}
nav ul li:hover {
    background:#4b545f;
    background: linear-gradient(top, #4f5964 0%, #5f6975 40%);
    background: -moz-linear-gradient(top, #4f5964 0%, #5f6975 40%);
    background: -webkit-linear-gradient(top, #4f5964 0%,#5f6975 40%);
    }
nav ul li:hover a {
color:#fff;
}
nav ul li a {
display:block;
padding:10px 40px;
color:#757575;
text-decoration:none; 
}
nav ul ul {
background:#5f6975;
border-radius:0px;
padding:0px;
position:absolute;
top:100%;
}
nav ul ul li {
    float:none;
    border-top:1px solid #6b727c;
    border-bottom: 1px solid #575f6a;
    position:relative;
}
nav ul ul li a {
    padding: 10px 40px;
    color:#fff;
}
nav ul ul li a:hover {
    background:#4b545f;
}
nav ul ul ul {
position:absolute; 
left:100%; 
top:0;
}

2 个答案:

答案 0 :(得分:0)

Reset CSS,我的朋友。

默认情况下,浏览器会设置很多东西,边距和填充就是一个很好的例子。这就是为什么如果你尝试制作一个100%宽度的div,它只能达到约95%的宽度。或者

虽然重置是一个很好的工具,但请务必查看它正在重置的所有内容。您当前的代码可能会有一些变化,但通常情况并非如此。

Normalize CSS是另一个不错的选择。

答案 1 :(得分:0)

@NoahKoch首先发送此信息......您必须Reset CSS,因为Chrome和FireFox具有默认的边距和标记的填充。此后最常见的问题是padding & width 它会修复这个:

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  zoom: 1;
}