html - 如何让我的列表项在 CSS 中向上移动一点

标签 html css

我是新手,需要一点帮助。 只是为一些练习设计一个随机网站,我似乎无法让我的标题上的顶部菜单向上移动。我在几个地方更改了填充和边距,但似乎无法正常工作。想知道我是否遗漏了什么,或者是否有更好的方法来组织我的 CSS。任何帮助将不胜感激。谢谢:)

#main {
    margin-left: auto;
    margin-right: auto;
    width: 800px;
}

body {
    margin:0;
}

#topbar {
    background-color: black;
    height: 80px;
    width: 100%;
    margin-top: 0;
    margin-bottom:0;
    font-family:Verdana, Arial, Helvetica, sans-serif;
}

#text {
    display:block;
    color: White;
    float:right;
    padding-right: 820px;
    padding-top: 10px;
    font-size:20px;
}

#topmenu {
    display:block;
    list-style:none;
    padding:0 400px 0px 0px;
    float: right;

}

#topmenu li {
    display: inline;
}

#topmenu a {
    position:relative;
    padding:0 4px 0 4px;
    font-size: 13px;
    text-decoration:none;

}

#topmenu a, #topmenu a:visited, #topmenu a:active {
    color:white;
}

I want the menu to move up ever so slightly.

<div id="topbar" >
<div id="text"><strong>My Template Website</strong></div>
<div id="topmenu">
    <ul>
        <li><a href=""/>Home</li>
        <li><a href=""/>About Us</li>
        <li><a href=""/>Services</li>
        <li><a href=""/>Product</li>
        <li><a href=""/>Contact Us</li>
    </ul>   


最佳答案

我假设您已经将标题的 margin-bottom 和 topmenu 的 margin-top 减少为 0,现在您需要一种无需绝对定位即可将 topmenu 调高一点的方法。您可能不知道的是,允许在菜单上使用负边距来调出它:

#topmenu {
  /* ... your other styles */
  margin-top: -15px;
}

在应用这个之前,你应该检查你的 ul 的边距,它可能有浏览器默认样式表的边距:

Debugging in the Firefox console

您可以在 Web 控制台中调试页面时自行检查(所有流行的浏览器都有一个;例如,在 Firefox 中,您必须按 F12)。

我不知道您网站的其余部分是什么样的,也不知道周围的 div#topmenu 是否真的需要。但如果没有,您可以删除它并将 id 提供给 ul,然后从您的new #topmenu 中删除 margin-top。这样做的好处是您不必管理两个不同的元素,这可能是您在此示例中混淆的原因。

<div id="topbar" >
  <div id="text"><strong>My Template Website</strong></div> <!-- <h1> instead for semantic reasons? -->
  <ul id="topmenu">
    <li><a href=""/>Home</li>
    <li><a href=""/>About Us</li>
    <li><a href=""/>Services</li>
    <li><a href=""/>Product</li>
    <li><a href=""/>Contact Us</li>
  </ul>
</div>

关于html - 如何让我的列表项在 CSS 中向上移动一点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41287208/

相关文章:

javascript - 为什么屏幕变暗并且我的 Bootstrap 模式没有出现?

javascript - 将鼠标悬停在关键字上会导致句子/段落中的某些单词发光

javascript - 具有 stroke 属性的 svg 样式 g 元素

html - 更改 Reveal JS R Markdown 中的标题字体大小

jquery - 给定一个通常手工填写的表格,我如何以编程方式打印出该表格上的信息?

html - 为什么我的文本只有在大部分内容绘制在元素之外后才会换行?

html - 添加内容后 Div 不适合父级

javascript - <li> 元素在不同背景颜色之间切换

html - 将多列 div 包裹在图像周围

html - div 顶部 1 px 空间,为什么?