html - 如何将三个点均匀地间隔为瘦汉堡菜单图标?

标签 html css dropdown

我希望代码显示 3 个条,而 3 个点最终成为下拉选项。出于某种原因,3 个点中的第一个点的间距不正确。

#dropdown {
  background: #3f51b5;
  padding: 30px;
  margin: 0px;
}

#dot {
  width: 5px;
  height: 5px;
  background: white;
  border-radius: 50%;
  float: right;
}

#bar {
  width: 25px;
  height: 3px;
  background: white;
  margin: 5px;
}
<div id="dropdown">
  <div id="dot"></div>
  <div id="bar"></div>
  <div id="dot"></div>
  <div id="bar"></div>
  <div id="dot"></div>
  <div id="bar"></div>
</div>

返回的图片:

image

最佳答案

这对 float 来说很难。 一个可能的解决方案是将点和条包裹在一个 div 中。 之后,您可以将那些包装 div 放置在您喜欢的样式中。 我在以下代码片段中为此使用了 flexbox。

#dropdown {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #3f51b5;
  padding: 30px;
  margin: 0px;
}

.dot {
  width: 5px;
  height: 5px;
  margin: 5px;
  background: white;
  border-radius: 50%;
}

.bar {
  width: 25px;
  height: 3px;
  background: white;
  margin: 5px;
}
<div id="dropdown">
  <div>
    <div class="bar"></div>
    <div class="bar"></div>
    <div class="bar"></div>
  </div>
  <div>
    <div class="dot"></div>
    <div class="dot"></div>
    <div class="dot"></div>
  </div>
</div>

p.s.:对于重复元素,您应该使用关键字 class 而不是 id。这可能仍然有效,但被认为是不好的做法,并且可能会破坏使用该 id 的 javascript 实现。

关于html - 如何将三个点均匀地间隔为瘦汉堡菜单图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54148184/

相关文章:

javascript - 如何构建一个 "slides in"的 CSS 动画,在完成滑动后显示一个文本/div?

python - 在非常大的 HTML 文件上使用 BeautifulSoup - 内存错误?

javascript - form li 后台更改

javascript - 移动页面后会立即打开一个弹出窗口

html - 尝试使用 CSS 在页面底部排列单独的 div

javascript - 如何使用JQuery在另一个div中找到div的宽度

html - 不可见的元素在不应该的时候被悬停

python - 如何返回由 2 个下拉列表更新的数据表作为 Plotly Python 中的输入

c# - 更改页面时如何从下拉列表中保留所选值?

php - Html 自动刷新表格