我制作了一个带有div元素的框,并希望在它的正上方放置一个导航栏.我希望导航栏粘在div框上,这样当页面调整大小时,它们仍然保持在一起.我try 通过使用"top"和"Left"属性调整导航栏的位置来手动完成此操作.但在调整页面大小后,我意识到它不起作用.

这就是我要说的,我的代码并不是写得最好的,因为总的来说我对CSS还很陌生.我已经添加了一个背景图像并对其进行了模糊处理,并制作了前面提到的div框.

.background {
  background-image: url("Background.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  height: 100vh;
  width: 100%;
}

.asdf {
  margin: 0;
  padding: 0px;
}

.asd {
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
  height: 100vh;
  width: 100%;
}

#Box {
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.4);
  border: 4px solid #f1f1f1;
  border-radius: 4px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  width: 60%;
  padding: 20px;
}

.Bigbox {
  font-weight: 500;
  Font-family: Helvetica;
  position: relative;
  font-size: 20px;
  color: white;
  text-align: center;
}

.title {
  font-weight: 700;
  font-size: 40px;
  transform: translate(0, -30%);
}

.text {
  font-size: 25px;
  text-align: justify;
}

#image1 {
  border: 2px solid #f1f1f1;
  width: 500px;
  Height: 300px;
}

li {
  float: left;
}

li a {
  display: block;
  color: black;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #f1f1f1;
  position: relative;
}
<head>
  <Title> title </Title>
  <link rel="stylesheet" type="text/css" href="Main.css">
</head>

<body class="asdf">
  <div class="background">
    <div class="asd">
      <div>
        <UL>
          <li><a href="#home">Home</a></li>
          <li><a href="#news">News</a></li>
          <li><a href="#contact">Contact</a></li>
        </UL>
      </div>
      <div id="Box" class="Bigbox">
        <div class="title">Lorem ipsum </div>
        <div class="text"> lorem ipsum</div>
      </div>
    </div>
  </div>
</body>

如有任何帮助,我们不胜感激!

需要澄清的图片:

它是如何:

How it is

我想要的样子:

How I want it to be

推荐答案

现代的做法是用flexbox英镑.您将使导航栏和内框的父元素成为弹性容器,然后应用对齐和对齐规则使其子元素居中.

默认情况下,元素彼此"粘合",除非您做些什么来改变这一点.毕竟,它们只是一堆东西.

绝对positioning通常是有问题的,因为它接受正常文档流之外的元素.除非你很清楚为什么你需要它,否则不要使用它.

浮动也很麻烦,除了几个特定的情况外,不被认为是一种现代的布局技术.避开他们.

body {
  margin: 0;
  padding: 0px;
}

.container {
  background-image: url("Background.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  height: 100vh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.container-inner {
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
}

#Box {
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.4);
  border: 4px solid #f1f1f1;
  border-radius: 4px;
  padding: 20px;
}

.Bigbox {
  font-weight: 500;
  Font-family: Helvetica;
  position: relative;
  font-size: 20px;
  color: white;
  text-align: center;
}

.title {
  font-weight: 700;
  font-size: 40px;
  transform: translate(0, -30%);
}

.text {
  font-size: 25px;
  text-align: justify;
}

#image1 {
  border: 2px solid #f1f1f1;
  width: 500px;
  Height: 300px;
}

li {
  display: inline-block;
}

li a {
  display: block;
  color: black;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #f1f1f1;
  position: relative;
}
<head>
  <Title> title </Title>
  <link rel="stylesheet" type="text/css" href="Main.css">
</head>

<body>
  <div class="container">
    <div class="container-inner">
      <div>
        <UL>
          <li><a href="#home">Home</a></li>
          <li><a href="#news">News</a></li>
          <li><a href="#contact">Contact</a></li>
        </UL>
      </div>
      
      <div id="Box" class="Bigbox">
        <div class="title">Lorem ipsum </div>
        <div class="text"> lorem ipsum</div>
      </div>
    </div>
  </div>
</body>

Html相关问答推荐

HTML CSS如何使用图像作为中心点将元素置于中心

一次悬停可触发同一分区中的另一次悬停

如何打破长URL,包含连字符在HTML与CSS

将多个内联元素置于中心,而无需访问父级上的CSS

需要帮助实现悬停动画效果

首字下沉非字母字符

Angular /HTML5不会播放本地文件夹中的音频mpeg

如何在用css使用网格视图时设置宽度?

如何影响flex项目中的flex-gap收缩顺序和文本换行顺序?

在R中从网页上的特定iframe中提取图形数据

浮动Div在CSS中未按预期工作

顶部有文字的图像的悬停效果

使用 Thymeleaf 将图像水平居中

SVG 填充 colored颜色 不使用轮廓填充空白区域

您如何动态更改 Vue 中更高级别的标签的 CSS

从右到左支持百分号

Header 或 P 标记中的填充不能与 em 单元一起正常工作

两个按钮范围滑块的 CSS

将固定/绝对伪元素放置在相对 div(具有滚动条)内,始终位于底部

那里有一个类似于 ?