html - 为什么两个行内 block 元素不在同一水平线上?

标签 html css formatting

在阅读了如何创建水平列表(导航栏)之后,我想为当前页面添加标题以及同一行的导航链接。在浏览器中查看文件时,标题和水平无序列表出现在不同的行上,即使它们都将显示设置为内联。这是什么原因造成的,是否有简单的解决方法?

.header {
    display: block;
    margin: auto;
}
#nav_bar ul li, #nav_bar h1{
    display: inline-block;
    border: 1px solid black;
}
#nav_bar a:link, #navbar a:visited {
    color: black;
}
<!DOCTYPE html>
<html>
  <head>
    <title>myWebpage</title>
    <link rel="stylesheet" type="text/css" href="index.css">
  </head>
  <body>
   <a href="http://example.com/"><img src="example.jpg" class="header" /></a>
    <div id="nav_bar">
      <h1>Home</h1>
      <ul>
        <li><a href="index.html">Home</a></li>
        <li><a href="foo.html">Foo</a></li>
        <li><a href="bar.html">Bar</a></li>
        <li><a href="baz.html">Baz</a></li>
      </ul>
    </div>
  </body>
</html>

最佳答案

您的 ul 未设置为内联 block 。默认情况下 ul 是一个 block 级元素,因此您只需将 display:inline-block 添加到您的 ul 即可。

关于html - 为什么两个行内 block 元素不在同一水平线上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33016204/

相关文章:

r - R 的两个数据格式问题

html - 嵌套列表 ie7

php - Xpath、php 以及如何跳过特定节点(及其子节点)

html - 如何相对于 flexbox 祖 parent 垂直居中 div?

html - 缩略图在页面滚动时不断重新加载

visual-studio-2010 - VS 2010 : Max line length guide does not render

javascript - 在从 jquery .load() 加载 html 页面时加载 javascript 时遇到问题

css - @media 查询问题。专注于输入元素时显示的隐藏图像

jquery - Bootstrap 按钮单选按钮显示在列内

.net - 根据可用宽度和字体计算文本高度?