我希望导航栏具有相同的大小,无论屏幕大小. 我可以用下面的css做到这一点. 然而,当我在它下面添加一个图像时,它的大小不再是固定的,而是随着屏幕大小的变化而变化. 我试图分析这种行为,但我不明白它为什么会这样. 有人能给我解释一下吗?

谢谢

.navigation-bar {
  background-color: rgba(232, 229, 228, 0.5);
  height: 60px;
  width: 400px;
  border-radius: 30px;
  position: fixed;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-around;
}
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />

    <link rel="stylesheet" href="testforanything.css" />
  </head>

  <body>
    <nav class="navigation-bar">
      <a href="home.html">Home</a>
      <a href="profile.html">Profile</a>
      <a href="contact.html">Contact</a>
    </nav>

    <!-- When I remove the image, the problem disappears. -->
    <img src="https://dummyimage.com/1024x724/000/ffffff.jpg" />
  </body>
</html>

推荐答案

这是因为你的图像没有响应性,达到你的图像尺寸后,你的屏幕尺寸无法缩小.让你的形象react 灵敏,你就可以行动了.我做了一些类似的事情,但你可以做任何你想做的事情,取决于你想对你的形象做什么. 说

.navigation-bar {
  background-color: rgba(232, 229, 228, 0.5);
  height: 60px;
  width: 400px;
  border-radius: 30px;
  position: fixed;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-around;
}

/*added part */

img {
  width: 100%;
  height: auto;
  max-width: 100%;
}

Html相关问答推荐

只有一行上有溢出的CSS网格

将输入字段下方的两个按钮设置为两侧对齐

每个元素的CSS网格高度相等,以保持响应性

Css网格:两列,除非小于150px

类型';联系人组件';上不存在属性';name FormControl';

如何在R rmarkdown中创建循环中的分页表?

:after 伪元素没有出现,即使它有 content 属性

为什么 `::before` 在使用内容 `url(svg)` 时会增加一些高度

如何影响 HTML 元素的哪些子元素导致其增长,哪些不增长?

如何创建淡出研磨背景

Google Apps 脚本 - RegEx 适用于小文本,但不适用于大文件?

使用 R markdown 在 html 中包含图像

CSS:第一个类型的伪类没有按预期工作

表格中每 4 行条纹一次

每次按下按钮时减小字体大小的 jquery 函数

按部分划分的表行带

打开 Bootstrap 模式时无法获得模糊的背景

如何使具有两个元素的 div 行在移动设备中响应

用 flexbox 和 overflow 覆盖