【问题标题】:Having Issues Making A Navigation Bar in Header在标题中制作导航栏时遇到问题
【发布时间】:2017-08-03 11:50:00
【问题描述】:

我正在尝试为页面顶部制作导航栏

.header {
  width: 100%;
  background-color: #2C2F33;
  border-bottom: 2.5px #FF9F00 solid;
  font-size: 15px;
}

#logo img {
  float: left;
  margin: 0;
  padding: 20px;
  width: 187.5px;
  height: 63.75px;
}

.navbar {
  display: flex;
  justify-content: space-between;
}

.navbar,
li {
  display: inline;
  padding: 0 22.5px 0 22.5px;
}

.navbar,
li,
a {
  text-decoration: none;
  list-style-type: none;
}

.navbar,
li,
a:hover {
  color: #FF9F00;
  text-decoration: none;
  list-style-type: none;
}

#dollarydoos,
#dsh {
  color: #FF9F00;
}

#dosh {
  color: #FFFFFF;
}
<div class="header">

  <div id="logo">

    <img src="./img/logo.png"></img>

  </div>

  <div class="navbar">

    <div id="leftnavbar">

      <ul>

        <li><span id="dollarydoos">Dollarydoos:</span> <span id="dosh">1.00000000</span> <span id="dsh">DSH</span></li>

      </ul>

    </div>

    <div id="rightnavbar">

      <ul>

        <li><a href="index.html">Button1</a></li>

        <li><a href="index.html">Button2</a></li>

        <li><a href="index.html">Button3</a></li>

        <li><a href="index.html">Button4</a></li>

      </ul>

    </div>

  </div>

</div>

我无法让按钮和 Dollardoos 有一个围绕它(内部)的小盒子,并与徽标的中心对齐并在中心列成一行。

像这样:

由于我在 HTML/CSS 方面没有太多经验,我该如何做到这一点。我是一个试图建立自己的网站的新手。

【问题讨论】:

  • 那些dollarydoos是从php生成的!?
  • @M0ns1f 没有 php。我什至不知道php。

标签: html css header navigation


【解决方案1】:

我为header 制作了一个弹性框,并为navbar 删除了display:inline

.header {
  width: 100%;
  background-color: #2C2F33;
  border-bottom: 2.5px #FF9F00 solid;
  font-size: 15px;
  display: flex;
  align-items: center;
}

#logo img {
  margin: 0;
  padding: 20px;
  width: 187.5px;
  height: 63.75px;
}

.navbar {
  display: flex;
  justify-content: space-between;
  margin-left: auto;
}

li {
  display: inline;
  padding: 0 22.5px 0 22.5px;
}

.navbar,
li,
a {
  text-decoration: none;
  list-style-type: none;
}

.navbar,
li,
a:hover {
  color: #FF9F00;
  text-decoration: none;
  list-style-type: none;
}

#dollarydoos,
#dsh {
  color: #FF9F00;
}

#dosh {
  color: #FFFFFF;
}
<div class="header">
  <div id="logo">
    <img src="http://placehold.it/200x100">
  </div>
  <div class="navbar">
    <div id="leftnavbar">
      <ul>
        <li><span id="dollarydoos">Dollarydoos:</span> <span id="dosh">1.00000000</span> <span id="dsh">DSH</span></li>
      </ul>
    </div>
    <div id="rightnavbar">
      <ul>
        <li><a href="index.html">Button1</a></li>
        <li><a href="index.html">Button2</a></li>
        <li><a href="index.html">Button3</a></li>
        <li><a href="index.html">Button4</a></li>
      </ul>
    </div>
  </div>
</div>

【讨论】:

  • 你能把元素推到右边吗? flexbox到底是做什么的?我尝试学习它,但从未掌握它
  • 现在使用 margin-left:auto 推到右侧导航栏。 Flexbox 用于简化布局的创建。一个很好的解释见这里css-tricks.com/snippets/css/a-guide-to-flexbox
  • 那么在这种情况下,margin-left: auto 做了什么?
  • 它需要尽可能多的边距,将元素推到右侧。
  • 所以如果它是 margin-right: auto 它会向左推,对吧?如果是的话;如果 margin-top --> 到底部等等,对吗?
猜你喜欢
  • 1970-01-01
  • 2020-12-16
  • 2018-10-05
  • 2018-09-12
  • 1970-01-01
  • 1970-01-01
  • 2015-01-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多